Search found 825 matches

by wgarvin
Tue Apr 22, 2014 9:04 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Solving Chess Kickstarter
Replies: 109
Views: 27010

Re: Solving Chess Kickstarter

Forgetting all else involved with solving chess, let's agree that to do this we need a database capable of several requirements. I'll list these and then someone please show me the db structure that i am so blissfully unaware of that accomplishes these requirements. 1. Is capable of storing any leg...
by wgarvin
Thu Apr 17, 2014 4:59 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: More apple madness
Replies: 23
Views: 4812

Re: More apple madness

My first thought when I saw this thread, was that you could just work around the problem by setting your thread affinity masks to contain even-numbered bits only. A little googling later, it was apparent that OSX doesn't even expose APIs for setting thread affinity. Apparently scheduling is the kern...
by wgarvin
Wed Apr 16, 2014 1:37 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Core Port Saturation
Replies: 16
Views: 2266

Re: Core Port Saturation

I spent a lot of the last 8 months trying to reduce the memory usage of an upcoming game on 360/PS3, in any way possible. Its amusing (amazing?) but its 2014 now and spending all day trying to optimize a pile of code to save 100 KB is still a thing game developers do!
by wgarvin
Wed Apr 16, 2014 1:26 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Core Port Saturation
Replies: 16
Views: 2266

Re: Core Port Saturation

PS3 has 256MB of system RAM, but also 256MB of video RAM. The operating system also permanently reserves some of both kinds of RAM for itself. In addition to GPU resources (textures, shaders, vertex and index buffers etc.) some games also use the video RAM to store some of the game engine's infreque...
by wgarvin
Tue Apr 15, 2014 9:40 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Core Port Saturation
Replies: 16
Views: 2266

Re: Core Port Saturation

One quibble. When you say "much kinder to integer alignment" it depends on what kind of integer. I've been working on some ASM code of late where I have written a small library to be used in my 330 class. Wanted to give them some easy code to do basic input and output, and for some things, I wanted...
by wgarvin
Tue Apr 15, 2014 3:36 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Core Port Saturation
Replies: 16
Views: 2266

Re: Core Port Saturation

These sort of synthetic benchmarks are not very indicative of actual performance on actual code. About the only thing they're useful for is measuring the cost/penalty for specific types of bottlenecks, stalls, etc. In general, x86/x64 is very forgiving for performance, and you only have to do a few ...
by wgarvin
Sun Mar 30, 2014 4:08 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Move time and compiler optimization
Replies: 57
Views: 7524

Re: Move time and compiler optimization

A real-life example that happened to me some time ago: nodes[res].index = addNode( n->front ); where nodes is a vector that can be changed by subsequent call to recursive method addNode. I think there is a serious problem of design in code like that. I fully second Lucas here, the correct fix i...
by wgarvin
Sun Mar 30, 2014 12:03 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: volatile?
Replies: 186
Views: 26554

Re: volatile?

The volatile in spinlock_types_up.h (uni-processor...) is also not really there: (code) It's only there for debugging reasons (that I won't pretend to understand). Most likely, its so that when debugging crashes and you see that code in the debugger, the proper value of the variable will al...
by wgarvin
Sat Mar 29, 2014 11:40 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Move time and compiler optimization
Replies: 57
Views: 7524

Re: Move time and compiler optimization

I think the point is that the compiler can do whatever optimizations it likes an long as the optimized program behaves exactly the same as if it was synchronized at sequence points. No argument with one exception. After the inlining stage of the compiler is done, some of the procedure calls are now...
by wgarvin
Sat Mar 29, 2014 11:30 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: volatile?
Replies: 186
Views: 26554

Re: volatile?

The volatile in spinlock_types_up.h (uni-processor...) is also not really there: (code) It's only there for debugging reasons (that I won't pretend to understand). Most likely, its so that when debugging crashes and you see that code in the debugger, the proper value of the variable will al...