Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 6 7 [8] 9 10 11

Author Topic: [OBSOLETE] DF Accelerator  (Read 31890 times)

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #105 on: December 03, 2008, 03:54:28 pm »

No luck reproducing the non-power-of-two texture bug yet, I'm afraid. I've only spent a very small amount of time on it yet, as I have a stochastic systems tomorrow, a distributed systems exams on friday, a calculus exam on tuesday, and a cryptography exam on the 15th...

For those of you with slowdowns, I have some ideas on how to speed up DFA quite a bit more - essentially, by using a smarter version of partial-printing. Right now it *disables* partial-printing (essentially, on the gpu side), and isn't very clever about the drawing mechanism. (90% of the code is in the DF-DFA interface)

That most of you still get a speedup is more because modern GPUs are horribly overpowered by any standard, but it requires a bit of cleverness from the drivers. I can fix that..

Um. Where was I.

Oh yes. Check back next week, thursday or so, and I'll have something new up.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #106 on: December 03, 2008, 04:00:22 pm »

Sneak preview:

Sometime later, after the 15th but before the 24th, I intend to go code-diving. I will rewrite DFA to rewrite DF on the fly so, instead of calling glColor3f (which it does some million times per second, ignoring partial-print), it'll directly write to DFA's memory instead. Should be interesting, and relatively easy.

I expect this to increase the benefit from DFA something like 10-50% - I'm really not sure. It'll be interesting to find out that, too.

In short, there will be interesting times.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Erom

  • Bay Watcher
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #107 on: December 03, 2008, 04:35:13 pm »

Wow. I'm impressed you can dig far enough into a compiled .exe to make those kind of changes, even just runtime-only. I was under the impression that that was really difficult.
Logged

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #108 on: December 03, 2008, 07:06:35 pm »

Normally, it would be. There are a number of factors that combine to make *this* particular change fairly simple (for someone who understands computers well enough).
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #109 on: December 04, 2008, 12:25:48 pm »

I couldn't resist looking a little at the assembly code. Oh, it's not done or anything, but while looking at it I figured out some optimizer changes that improves speed on OS X a bit.

Have fun.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Fatum

  • Bay Watcher
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #110 on: December 04, 2008, 04:41:58 pm »

I can't fully express the degree of my respect for your work.
Well, speeding up the thing wasn't all too necessary for me, but still: placing a single dll in a single folder makes the CPU load twice less, from some 22% to 7-10%. AWESOME.
Logged

Inquisitor Saturn

  • Bay Watcher
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #111 on: December 04, 2008, 06:09:03 pm »

No good, I get a crash at startup when using this, even with the provided EXE.
Logged

Magua

  • Bay Watcher
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #112 on: December 04, 2008, 10:05:08 pm »

Can't reproduce. I did add support for map printing a while ago, but the way that works, there should be no way for it to crash.

What's the debugging output?

This is what the modified dwarfort spits out when I "Start Playing", pick a region, pick "Legends", and press 'p'.

Spoiler (click to show/hide)
Logged
Also, you can manufacture vomit at a smelter.  Subsequently removing the smelter spews vomit over a surprising area.

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #113 on: December 05, 2008, 08:00:30 am »

No good, I get a crash at startup when using this, even with the provided EXE.
Debugging output? If the terminal disappears when it crashes, start it from a command-line window. It'll output there instead.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #114 on: December 05, 2008, 08:11:57 am »


This is what the modified dwarfort spits out when I "Start Playing", pick a region, pick "Legends", and press 'p'.

*snip*

That's interesting. It's crashing before printing a message about region printing, which means it never gets that far..

Could you paste your entire init.txt in a spoiler?
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Magua

  • Bay Watcher
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #115 on: December 05, 2008, 11:33:11 am »

That's interesting. It's crashing before printing a message about region printing, which means it never gets that far..

Could you paste your entire init.txt in a spoiler?

Spoiler (click to show/hide)
Logged
Also, you can manufacture vomit at a smelter.  Subsequently removing the smelter spews vomit over a surprising area.

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #116 on: December 05, 2008, 12:48:24 pm »

In a fit of inspiration, I fixed DF's partial-printing code; specifically the part where it calls glColor3f too much.

This made absolutely no difference. It might make more difference without DFA running, but then the patch would never get written. I'm shelving this idea. There are still other improvements to be made.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Inquisitor Saturn

  • Bay Watcher
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #117 on: December 05, 2008, 01:34:53 pm »

Debugging output? If the terminal disappears when it crashes, start it from a command-line window. It'll output there instead.

It says this:

Quote
Linking OpenGL
Expanding texture catalog from 1 to 2 textures
Mouse texture detected and happily ignored
Expanding texture catalog from 2 to 4 textures
Expanding texture catalog from 4 to 8 textures
Expanding texture catalog from 8 to 16 textures
Expanding texture catalog from 16 to 32 textures
Expanding texture catalog from 32 to 64 textures
Expanding texture catalog from 64 to 128 textures
Expanding texture catalog from 128 to 256 textures
Expanding texture catalog from 256 to 512 textures
Expanding texture catalog from 512 to 1024 textures

Tried changing my graphics back from a 12x12 square set to the default 8x12, but there's no difference.
« Last Edit: December 05, 2008, 01:38:19 pm by Inquisitor Saturn »
Logged

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #118 on: December 06, 2008, 05:17:54 am »

Just checking, you don't happen to have the mouse texture on?
That'd probably cause a crash. I should do something about that.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Ogantai

  • Bay Watcher
    • View Profile
Re: DF Accelerator, combined, ultimate, all-knowing, all-doing, bugless version
« Reply #119 on: December 06, 2008, 08:36:25 am »

In a fit of inspiration, I fixed DF's partial-printing code; specifically the part where it calls glColor3f too much.

This made absolutely no difference. It might make more difference without DFA running, but then the patch would never get written. I'm shelving this idea. There are still other improvements to be made.
Please leave it in, it may make a difference on older graphics cards.
Logged
Pages: 1 ... 6 7 [8] 9 10 11