Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2

Author Topic: Looking for software...  (Read 1529 times)

Geofferic

  • Bay Watcher
    • View Profile
Looking for software...
« on: April 03, 2008, 01:48:00 pm »

NO idea what it would be called or if it yet exists, but it would help a lot with DF.  Hehe.

New Quad Core coming in and I was wondering if there was a sort of 'super process' (like a virtual machine) that I could load first, then load DF into - the point being that the virtual machine would look like a single core to DF but then be fully multi-core capable itself.

IE, allow me to take advantage of the quadcore for running DF without DF ever knowing.

Logged

brainfire

  • Bay Watcher
    • View Profile
Re: Looking for software...
« Reply #1 on: April 03, 2008, 02:35:00 pm »

Not really possible, unfortunately. DF itself would have to be multithreaded to ever get any performance bonus out of multiple cores.

You could watch a video at the same time though, or encode a dvd or something!

Logged
You can allow or stop your dwarves from eating these mushrooms, but it's entirely optional and doesn't turn Dwarf Fortress into Dwarf hookah-smoking pad.

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: Looking for software...
« Reply #2 on: April 03, 2008, 03:21:00 pm »

what you are looking for does not exist. It is however theoretically possible to write a compiler that automatically converts single threaded applications into multi-threaded applications.

If you could the decompile DF and recompile it, you would theoretically have a multi-threaded application.

There are some major, major hurdles to this.

1: The Theta/Omega of an algorithm to convert a single thread into multiples may be prohibitively complex.

2: The original program may be written in a way that makes multi-threading impractical.

3: Even if the program is written in a way that makes multi-threading practical, a general algorithm for splitting threads may not be able to find a best fit solution or reduce overhead enough to speed up execution.

4: decompilation may produce code that even a "good" thread splitting algorithm may be unable to produce meaningful results for even if the original code might qualify.

But if you are looking for a doctoral thesis in CS, and you don't mind wrapping your brain around a brick wall the hard way, writing a thread splitting algorithm and demonstrating/proving its efficiency would be a good idea.

It would probably be easier to beg/pay toady to learn multi-threading and then get him to rewrite the entire program from scratch.
[ April 03, 2008: Message edited by: Nadaka ]

[ April 03, 2008: Message edited by: Nadaka ]

Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.

Geofferic

  • Bay Watcher
    • View Profile
Re: Looking for software...
« Reply #3 on: April 03, 2008, 03:37:00 pm »

So the real question is:  What does Toady want for his birthday?
Logged

Keizo

  • Bay Watcher
  • Proving dwarven motorcycle gangs are yankees too.
    • View Profile
Re: Looking for software...
« Reply #4 on: April 03, 2008, 04:30:00 pm »

My question is why does DF attract so many computer science / math nerds? Last I checked, dwarves dealt with heavy metals and lots of fire and pounding.
Logged
火族

Jay

  • Bay Watcher
  • ☼Not Dead Yet☼
    • View Profile
Re: Looking for software...
« Reply #5 on: April 03, 2008, 04:45:00 pm »

quote:
Originally posted by Keizo:
<STRONG>My question is why does DF attract so many computer science / math nerds? Last I checked, dwarves dealt with heavy metals and lots of fire and pounding.</STRONG>
But Dwarf Fortress itself, that is to say the game, not the dwarves, is inherently complex.  "Nerds" flock to complex things.
Jaybud cancels Write Post: Interrupted by Human Axeman
Logged
Mishimanriz: Histories of Pegasi and Dictionaries

Jreengus

  • Bay Watcher
  • Si Hoc Legere Scis Nimium Eruditionis Habes
    • View Profile
Re: Looking for software...
« Reply #6 on: April 03, 2008, 04:53:00 pm »

Yep I love these forums because they make me feel stupid, unlike normal human interaction which makes me feel everyone else is stupid.
Logged
Oh yeah baby, you know you like it.  Now stop crying and get in my lungs.
Boil your penis. I'm convinced that's how it happened.
My HoM.

Arkose

  • Bay Watcher
    • View Profile
Re: Looking for software...
« Reply #7 on: April 03, 2008, 06:25:00 pm »

quote:
Originally posted by Keizo:
<STRONG>My question is why does DF attract so many computer science / math nerds? Last I checked, dwarves dealt with heavy metals and lots of fire and pounding.</STRONG>

Because nerds like epic fantasy tropes, by and large.

Logged

numerobis

  • Bay Watcher
    • View Profile
Re: Looking for software...
« Reply #8 on: April 03, 2008, 06:28:00 pm »

quote:
Originally posted by Nadaka:
<STRONG>2: The original program may be written in a way that makes multi-threading impractical.</STRONG>

This would be the vast majority of programs.  Parallelizing sequential code is a big topic of research, but no one really expects it to get enormous gains because some very natural algorithms are just inherently sequential.  The compiler would need to magically figure out how to use a different algorithm.  For instance, splay trees are great for sequential code because they're really fast (dynamic optimality conjecture etc) -- but they're horrid for parallel code because every single access changes the root node, so they're no possibility even for concurrent reads.  You'd need your compiler to switch from a splay tree to some other kind of balanced tree.  We can still publish research articles in prestigious conferences just talking about parallelizing a particular esoteric problem (that's what pays my rent), nevermind a user application.

I've seen work in the database world of basically a less-annoying version of Clippy saying "I think you are writing a parallelism bottleneck."  That's more of a debugger than a compiler.  Intel, among others, seems to be putting more stock on new programming languages that make it easy to write parallel code, rather than automatically parallelizing old stuff.    You might be interested in MIT's Cilk, along those lines (it's C, you pay a 3x overhead up-front, but it's quite easy to use).  OpenMP, MPI, or Google's famous MapReduce are not particularly well-suited for application programs, and just using threads directly is a disaster in terms of programmer productivity.

Logged

numerobis

  • Bay Watcher
    • View Profile
Re: Looking for software...
« Reply #9 on: April 03, 2008, 06:29:00 pm »

quote:
Originally posted by Arkose:
<STRONG>Because nerds like epic fantasy tropes, by and large.</STRONG>

And we like figuring out how to discover/use/abuse the world's physics.

Logged

Keizo

  • Bay Watcher
  • Proving dwarven motorcycle gangs are yankees too.
    • View Profile
Re: Looking for software...
« Reply #10 on: April 03, 2008, 07:24:00 pm »

I don't know, I always had dwarf nerds figured for Medieval History majors and such. Most people I've played pen and paper RPGs with were of that breed. Even most game designers I know don't have a strong math / computer science background, and I know some folks who work for MMORPG companies.

Actually, I have a question for you comp sci people. I know there are a lot of folks on here who actually don't regularly play DF. So, for you people with deep programming/computer knowledge: DO you play DF a lot? Or are you just here discussing a game that is extremely complex in its workings, but don't particularly play it often?

Logged
火族

Puzzlemaker

  • Bay Watcher
    • View Profile
Re: Looking for software...
« Reply #11 on: April 03, 2008, 07:28:00 pm »

quote:
Originally posted by thatguyyaknow:
<STRONG>Yep I love these forums because they make me feel stupid, unlike normal human interaction which makes me feel everyone else is stupid.</STRONG>

Hahahaahahahahaha.

Wow.  That made me laugh hard.

Logged
The mark of the immature man is that he wants to die nobly for a cause, while the mark of the mature man is that he wants to live humbly for one.

Basilisk

  • Bay Watcher
    • View Profile
Re: Looking for software...
« Reply #12 on: April 03, 2008, 08:55:00 pm »

quote:
Originally posted by Nadaka:
<STRONG>2: The original program may be written in a way that makes multi-threading impractical.</STRONG>

I can only imagine that the simulation steps (for water, temperature, weather) could be easily parallelized.

It would just take quite a bit of work to do that, and then maintain it as new simulations are added.

Logged

Geofferic

  • Bay Watcher
    • View Profile
Re: Looking for software...
« Reply #13 on: April 04, 2008, 12:06:00 am »

quote:
Originally posted by Basilisk:
<STRONG>

I can only imagine that the simulation steps (for water, temperature, weather) could be easily parallelized.

It would just take quite a bit of work to do that, and then maintain it as new simulations are added.</STRONG>


This is exactly where we need parallel processes.  If we could just offload water/temp/weather/background AI (as in, what the other civs are doing) onto separate cores we'd get (I would imagine) tremendous speed improvements.  Also, I would think that separating out that sort of code would be some of the easier ways to take advantage of multiple cores.

Logged

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: Looking for software...
« Reply #14 on: April 04, 2008, 10:49:00 am »

I think the reason I am attracted to DF is manyfold.

1: it is complex, deep and rich
2: it is a game, and CS guys need to have games to distract them from the general monotony of normal programming.
3: it uses some interesting features (fractal/procedural world gen, fluid dynamics, relationship models, "living" history)
4: its the kind of project that most programmers dream about. 100% autonomy on a project that almost perfectly matches your interests.
5: I want to do something similar (a self made deep, rich game)

Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.
Pages: [1] 2