Profit: Have you actually done any projects implementing functionality using GPGPU? Why suggest CUDA when it is very hardware specific, NVidia is no longer the top dog in GPU's.
Someone just said CUDA. And so I just used it as an example.
To the point he is i think it wuol dbe easier to simply create a *emulator* wich will run DF inside himself and split everything to both core, a bit like Dosbox emulator these old game. I dont know if its even possible to make a non-multicore support/multicore support preogram wich lpay a game withing hiself, but that would be 1 awesome, 2 easier to prgram than change the DF game.
You cannot emulate it. Sorry.
The instructions have to be designed so they can be parallel or they wont work except in a ludicrously specific exceptions.. The emulator itself could be highly parallel, but the program inside of it could never really run faster than it could outside the emulator.
he stated flat out he won't do it. ever...
Can you provide us with a citation for that? I mean the thread(s), DF talk or other medium where he stated such.
I mean, I'll take your word for it, but I want to know his reasoning for being as adamantly opposed to multithreading as you claim he is.
.
I am sorry I cannot, it is so old it is now forum legend. This goes back a long time but if I recall the reason is he does not know, and does not want to take a year off DF to learn. I am sorry it has just been too long, the only thing I remember is everyone said he was very firm on the point of no multithreading.
I have a reference by him on it though: (Quick note, with a post date of 2006 means he probably has done all the optimizations he knows of)
I'm just not sure where to begin with this sort of thing, and things like multi-threading and so on, given that I have a giant mass of code that's currently being run in one sequence. It seems like it would take a lot of effort to figure this out and the best ways to use it and so on, when I still have plenty of regular optimizations to take advantage of.
However in future of the fortress 4 He mentioned Threading Building blocks. So he did at one point look into it. (
http://www.threadingbuildingblocks.org/)
Yeah, I don't know if it was tbb or something else, but I've received some correspondence on a few threading applications that work at a small scale like that. I haven't had a chance to look at anything yet. After brief look I couldn't find a page that clearly spelled out what the requirements were in tbb for a non-commercial license. I'm often in a grey area there, I think.
as a side note, the license for that is here ->
http://www.gnu.org/licenses/old-licenses/gpl-2.0.html with the runtime exception listed here ->
http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt01ch01s02.htmlBeing that links to it were on the about page on the website, featured fairly prominently he was probably looking at something else and just had TBB stuck in his mind for the forum post.
(The runtime exception means basicly if toady used TBB even though it is under the GPLv2 Public licence, he would NOT be forced to open his source for his program)