ChessUSA.com TalkChess.com
Hosted by Your Move Chess & Games
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Stockfish port to C# Complete
Post new topic    TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions Flat
View previous topic :: View next topic  
Author Message
Vincent Diepeveen



Joined: 09 Mar 2006
Posts: 1738
Location: The Netherlands

PostPost subject: Re: Stockfish port to C# Complete    Posted: Sun Mar 25, 2012 9:50 am Reply to topic Reply with quote

RoadWarrior wrote:
Interesting - Peter Österlund has just released a C++ implementation of his strong (Elo 2682) Java engine CuckooChess. He says that it's about twice as fast as the Java version: http://talkchess.com/forum/viewtopic.php?t=42999

From experience, C# runs faster than Java. So any claim of a C/C# slowdown in excess of a factor of 2 needs some pretty strong evidence before I'm going to believe it.


Yeah about a factor of 4 it is effectively.

Just try to do the same things like the C engines ok. Multiproces/multithread, hashtables, and elo-optimizations rather than nps optimizations.

If i turn off hashtable for example in Diep for the last ply, diep's nps goes up 20%.

Years ago already we saw 20 mln nps engines, and that was with forward pruning and with elo optimization.

Every compare here is with GCC. A junk compiler i use daily, so the junk it produces i know everything about. For free and therefore everyone who has a commercial interest in throwing in persons to keep it slow, they do that (ever seen a $100 billion company not do something like that to keep a $100 billion company huh?). A compiler factor 2 slower already, and even then nothing is on par with it.

What will happen if you have a full blown engine is that your L1i will totally get overrun by C#, that the caches get stressed to the limit, and that everywhere penalties will be there for C#. Heavy branch mispredicts which the pgo (not working very well for GCC to say polite - it's losing already 30% there) of the C/C++ engines doesn't have at all, dozens of cycles just for loading a few bytes out of L1i, which no C/C++ engine has either.

And all that won't be there in a testlab comparing just 1 routine versus a C compile.

And now you still are in the proces of comparing to beancounters so far...

Diep has a huge evaluation function, yet it really suffers also from a 1.34% L1i missrate. That 1.34% might seem little to you, but it's a huge slowdown.

If diep would be in C#, even if you'd produce efficient code with C#, which C# won't do of course, then you're looking at a slowdown of factor 5 already *just because of the L1i*.

Also i've never seen a C# engine use effectively a core or 16, someone already referred to that here earlier that when he's doing things SMP that he slows down a lot more.

So you'll be factors slower than C/C++. Where we already can't take it serious when you're 20% slower, let alone factor 2, so far the evidence we have there from a bit more objective tests than you did do here so far is that the slowdown is more of a factor 4 than factor 2.

And that for a programming language from which just got designed to counter Java.

The real question is: why would you want to slowdown volunteerly factor 4?

That's like the difference between an i7 sixcore and my old dual opteron dual core from januari 2006. A six year difference, as they ain't following Moore very well...

It's a no brainer of course: go use C for a chess engine, as most also mess up with C++ versus C.

Wanting to run 6 years behind volunteerly just because of the language choice is something i'll never understand.

It's true you also can say that from assembler versus C; assembler is a lot faster, yet it's also way more work and not portable.

In reality in object oriented languages you type more lines of code than in an imperative programming language. Now i do understand those who favour C++ over C, as in theory you can reach the same speed.

So learning that language better in manner that you write code similar to C, i do understand the choice of some for C++.

Yet C# or Java. 6 years. Even a T-ford from start 20th century wasn't driving on the roads factor 4 slower than todays cars.

Over here it's getting towards 130 KM/hour (most areas still 100 or 120 caused by civil servants who all vote for the communists and don't have a car themselves). A t-ford could definitely reach 130 KM/hour within a factor of 4.

So you're running 100 years behind man.

Vincent
Back to top
View user's profile Send private message Send e-mail Visit poster's website MSN Messenger
Display posts from previous:   
Subject Author Date/Time
Stockfish port to C# Complete David Whitten Thu Mar 15, 2012 9:13 pm
      Re: Stockfish port to C# Complete Jan Brouwer Thu Mar 15, 2012 9:29 pm
            Re: Stockfish port to C# Complete David Whitten Thu Mar 15, 2012 9:45 pm
                  Re: Stockfish port to C# Complete Jan Brouwer Thu Mar 15, 2012 10:51 pm
                        Re: Stockfish port to C# Complete David Whitten Thu Mar 15, 2012 11:04 pm
                              Re: Stockfish port to C# Complete Mel Cooper Mon Mar 19, 2012 12:11 pm
                        Re: Stockfish port to C# Complete David Whitten Thu Mar 15, 2012 11:08 pm
                        Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 18, 2012 2:57 pm
                              Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 18, 2012 3:05 pm
                                    Re: Stockfish port to C# Complete David Whitten Sun Mar 18, 2012 3:24 pm
                                          Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 18, 2012 3:27 pm
                                                Re: Stockfish port to C# Complete David Whitten Sun Mar 18, 2012 3:44 pm
                                                      Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 18, 2012 3:47 pm
                                                            Re: Stockfish port to C# Complete David Whitten Sun Mar 18, 2012 3:59 pm
                                                                  Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 18, 2012 4:11 pm
                                                                        Re: Stockfish port to C# Complete Marco Costalba Sun Mar 18, 2012 4:49 pm
                                                                              Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 18, 2012 5:00 pm
                                                                                    Re: Stockfish port to C# Complete Marco Costalba Sun Mar 18, 2012 5:22 pm
                                                                              Re: Stockfish port to C# Complete Ronald de Man Sun Mar 18, 2012 5:53 pm
                                                                                    Re: Stockfish port to C# Complete David Whitten Sun Mar 18, 2012 7:01 pm
                                                                                          Re: Stockfish port to C# Complete Matthew R. Brades Sun Mar 18, 2012 7:06 pm
                                                                                          Re: Stockfish port to C# Complete Ronald de Man Sun Mar 18, 2012 7:10 pm
                                                                                          Re: Stockfish port to C# Complete Marco Costalba Sun Mar 18, 2012 10:31 pm
                                                                                          Re: Stockfish port to C# Complete David Whitten Mon Mar 19, 2012 3:55 am
                                                                                          Re: Stockfish port to C# Complete Marco Costalba Mon Mar 19, 2012 7:42 am
                                                                                          Re: Stockfish port to C# Complete Vincent Diepeveen Mon Mar 19, 2012 8:00 am
                                                                                          Re: Stockfish port to C# Complete Vincent Diepeveen Mon Mar 19, 2012 8:03 am
                                                                                          Re: Stockfish port to C# Complete Ronald de Man Mon Mar 19, 2012 7:41 pm
                                    Re: Stockfish port to C# Complete Mark Pearce Mon Mar 19, 2012 4:27 pm
                                          Re: Stockfish port to C# Complete Vincent Diepeveen Tue Mar 20, 2012 1:12 am
                                                Re: Stockfish port to C# Complete Mark Pearce Sat Mar 24, 2012 11:43 am
                                                      Re: Stockfish port to C# Complete Gary Sat Mar 24, 2012 1:15 pm
                                                            Re: Stockfish port to C# Complete Mark Pearce Sat Mar 24, 2012 3:28 pm
                                                                  Re: Stockfish port to C# Complete Mark Pearce Sat Mar 24, 2012 5:13 pm
                                                                        Re: Stockfish port to C# Complete Balint Pfliegel Sun Mar 25, 2012 7:15 am
                                                                              Re: Stockfish port to C# Complete Mark Pearce Sun Mar 25, 2012 10:40 am
                                                                        Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 25, 2012 9:50 am
                                                                              Re: Stockfish port to C# Complete Marco Costalba Sun Mar 25, 2012 10:14 am
                                                                                    Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 25, 2012 3:23 pm
                                                                                          Re: Stockfish port to C# Complete Marco Costalba Sun Mar 25, 2012 5:16 pm
                                                                                          Re: Stockfish port to C# Complete Vincent Diepeveen Mon Mar 26, 2012 9:34 pm
                                                                                          Re: Stockfish port to C# Complete Jim Ablett Tue Mar 27, 2012 10:23 pm
                                                                                          Re: Stockfish port to C# Complete Vincent Diepeveen Wed Mar 28, 2012 9:03 am
                                                                                          Re: Stockfish port to C# Complete Jim Ablett Wed Mar 28, 2012 11:13 am
                                                                                          Re: Stockfish port to C# Complete Vincent Diepeveen Wed Mar 28, 2012 12:39 pm
                                                                                          Re: Stockfish port to C# Complete Jim Ablett Wed Mar 28, 2012 12:48 pm
                                                                                          Re: Stockfish port to C# Complete Vincent Diepeveen Wed Mar 28, 2012 12:54 pm
                                                                                          Re: Stockfish port to C# Complete Jim Ablett Wed Mar 28, 2012 1:06 pm
                                                                                          Re: Stockfish port to C# Complete Vincent Diepeveen Wed Mar 28, 2012 1:08 pm
                                                                                          Re: Stockfish port to C# Complete Robert Hyatt Wed Mar 28, 2012 5:01 pm
                                                                                          Re: Stockfish port to C# Complete Jim Ablett Wed Mar 28, 2012 5:19 pm
                                                                                          GCC 4.7.0 versus intel c++ Vincent Diepeveen Fri Mar 30, 2012 12:15 am
                                                                                          Re: GCC 4.7.0 versus intel c++ Jim Ablett Fri Mar 30, 2012 9:18 am
                                                                                          Re: GCC 4.7.0 versus intel c++ Vincent Diepeveen Fri Mar 30, 2012 1:15 pm
                                                                                          Re: Stockfish port to C# Complete Ricardo Barreira Wed Mar 28, 2012 2:46 pm
                                                                              Re: Stockfish port to C# Complete Mark Pearce Sun Mar 25, 2012 11:03 am
                                                                                    Re: Stockfish port to C# Complete Balint Pfliegel Sun Mar 25, 2012 12:31 pm
                                                                                          Re: Stockfish port to C# Complete Vincent Diepeveen Sun Mar 25, 2012 3:39 pm
                                                                                          Re: Stockfish port to C# Complete Balint Pfliegel Sun Mar 25, 2012 4:50 pm
                                                                                          Re: Stockfish port to C# Complete Balint Pfliegel Sun Mar 25, 2012 5:05 pm
                                                                                          Re: Stockfish port to C# Complete David Whitten Sun Mar 25, 2012 8:31 pm
                                                                                          Re: Stockfish port to C# Complete Ted Wong Mon Mar 26, 2012 12:50 am
                                                                                          Re: Stockfish port to C# Complete David Whitten Mon Mar 26, 2012 10:38 am
                                                                                          Re: Stockfish port to C# Complete Balint Pfliegel Mon Mar 26, 2012 6:02 am
                                                                                          Re: Stockfish port to C# Complete David Whitten Mon Mar 26, 2012 10:42 am
                                                                                    Re: Stockfish port to C# Complete Vincent Diepeveen Mon Mar 26, 2012 9:59 pm
                                                                                          Re: Stockfish port to C# Complete Mark Pearce Tue Mar 27, 2012 7:43 pm
      Re: Stockfish port to C# Complete David Whitten Sun Mar 18, 2012 3:23 am
            Re: Stockfish port to C# Complete Balint Pfliegel Wed Mar 21, 2012 10:48 pm
                  Re: Stockfish port to C# Complete David Whitten Thu Mar 22, 2012 4:19 am
                        Re: Stockfish port to C# Complete Balint Pfliegel Thu Mar 22, 2012 6:51 am
                              Re: Stockfish port to C# Complete David Whitten Thu Mar 22, 2012 3:19 pm
                                    Re: Stockfish port to C# Complete Balint Pfliegel Fri Mar 23, 2012 5:47 am
      Re: Stockfish port to C# Complete Jim Ablett Wed Mar 28, 2012 4:14 pm
Post new topic    TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum




Powered by phpBB © 2001, 2005 phpBB Group
Enhanced with Moby Threads