Poll GPU planet generation, please test

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,814
Reaction score
869
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
Continuing from http://www.orbiter-forum.com/showthread.php?t=17927 , in new thread for consistency sake.

The idea is rapid planetary texture generation on graphic cards.
The potential issue is compatibility with hardware used there.

Thanks to previous poll i've established a basic system that seems to work for most users with relatively recent cards.

Now, that one was just a basic test.
This time it's the real deal, generating a full texture with fully defined function.

If you're interested, please test this:
http://orbides.1gb.ru/orbf/planetgen.zip

The program would generate a full planetary texture on GPU of given level, measure how long it takes, and write it down to bmp file.

At least level 4 should work, and lv 5 for most cases, for this whole mess to be successful. Higher levels should work if you have adequate resources and are only for time benchmarking.

The texgen.log file will accumulate results, so the best way of testing is to run from lv4 to lv 8, then post the log file.

Also, make sure the texture is generated and looks like the reference:
planet_5.jpg
 
Only really slowed down at Level 8

Code:
GPU Name=ATI Radeon HD 5800 Series 
Finita.
--Initializing computation...
--Done.
--Generating on gpu...
Done in 386434
Writing bmp
Finita.
GPU Name=ATI Radeon HD 5800 Series 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 347321
Writing bmp
Finita.
GPU Name=ATI Radeon HD 5800 Series 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 409635
Writing bmp
Finita.
GPU Name=ATI Radeon HD 5800 Series 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 608915
Writing bmp
Finita.
GPU Name=ATI Radeon HD 5800 Series 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 2475450
Writing bmp
 
Code:
GPU Name=NVIDIA GeForce GT 240
--Initializing computation...
--Done.
--Generating on gpu...
Done in 709015
Writing bmp
Finita.



Code:
genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"


---------- Post added at 10:50 AM ---------- Previous post was at 10:43 AM ----------

Here's a lvl8 render :

Code:
GPU Name=NVIDIA GeForce GT 240
--Initializing computation...
--Done.
--Generating on gpu...
Done in 6902680
Writing bmp
Finita.

Code:
genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

The texture was looking the same as the Lvl5, with a far higher resolution as expected (128 MB)
 
Log for levels 4,5,6,7,8:
Code:
GPU Name=NVIDIA GeForce 8800 GT 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 494314
Writing bmp
Finita.
GPU Name=NVIDIA GeForce 8800 GT 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 705101
Writing bmp
Finita.
GPU Name=NVIDIA GeForce 8800 GT 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 1240060
Writing bmp
Finita.
GPU Name=NVIDIA GeForce 8800 GT 
--Initializing computation...
--Done.
--Generating on gpu...
GPU Name=NVIDIA GeForce 8800 GT 
--Initializing computation...
--Done.
--Generating on gpu...
Images for levels 4,5,6 was generated exactly as they should but nothing was generated for levels 7 and 8 ( программа вызвала сообщение "Display driver stopped responding and recovered" от windows а затем повисла ).

Shader.log contains this lines for all levels:
Code:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
 
Really slowed down? It does in 2-6 seconds what CPU does in about 30 minutes, don't forget. :)

Well, Time is relative, It is 3 times as long as lvl 7...

I assume this is good news?
 
Here's only relevant information cropped from texgen.log:

GPU Name=NVIDIA GeForce 8800 GTS
  • Level 4: Done in 324178
  • Level 5: Done in 461316
  • Level 6: Done in 999300
  • Level 7: Done in 3125774
  • Level 8: Done in 11593098
Video memory on graphics card: 640 MB.

planetgen.exe - shader.log:
Code:
genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
 
Code:
Done in 3914362
Done in 5022837
Done in 10123284
Done in 37702411
Done in 30233637

Level 8 didn't work, just a black texture. It's probably too much for my card to handle.
 
Code:
GPU Name=AMD M880G with ATI Mobility Radeon HD 4200    
--Initializing computation...
--Done.
--Generating on gpu...
Done in 2244299
Writing bmp
Finita.
GPU Name=AMD M880G with ATI Mobility Radeon HD 4200    
--Initializing computation...
--Done.
--Generating on gpu...
Done in 3061299
Writing bmp
Finita.
GPU Name=AMD M880G with ATI Mobility Radeon HD 4200    
--Initializing computation...
--Done.
--Generating on gpu...
Done in 5639858
Writing bmp
Finita.

Mine dies at level 7, ATI driver crashes.
 
Code:
GPU Name=NVIDIA GeForce 8600M GT  
--Initializing computation...
--Done.
--Generating on gpu...
Done in 885892
Writing bmp
Finita.
GPU Name=NVIDIA GeForce 8600M GT  
--Initializing computation...
--Done.
--Generating on gpu...
Done in 1351869
Writing bmp
Finita.

That was LV4 and 5. It couldn't handle LV6 anymore, driver crashes and screen goes black. After than that something weird happens, screen gets ripples, I have to restart the whole laptop to get rid of it. I run Windows 7 so I tried to turn off the effects, no effect. Unfortunately I can't take a screenshot of it, it looks normal on the picture.

Driver version: 197.16
 
Code:
GPU Name=ATI Mobility Radeon HD 3650
--Initializing computation...
--Done.
--Generating on gpu...
Done in 2410121
Writing bmp
Finita.
GPU Name=ATI Mobility Radeon HD 3650
--Initializing computation...
--Done.
--Generating on gpu...
Done in 2695052
Writing bmp
Finita.
GPU Name=ATI Mobility Radeon HD 3650
--Initializing computation...
--Done.
--Generating on gpu...
Done in 4210437
Writing bmp
Finita.

computerex said:
Mine dies at level 7, ATI driver crashes.
Same here.
 
Code:
GPU Name=NVIDIA GeForce 8800 GTS 512
--Initializing computation...
--Done.
--Generating on gpu...
Done in 560642
Writing bmp
Finita.

This is for lvl 5. How do I make it generate other levels?
 
My nVidia driver also fails on lvl7 and lvl8. The screeng goes black, then I get a message "display driver failed and was recovered" that pops up from the taskbar.
 
Code:
GPU Name=LogMeIn Mirror Driver
--Initializing computation...
--Done.
--Generating on gpu...
Done in 1459666
Writing bmp
Finita.
GPU Name=LogMeIn Mirror Driver
--Initializing computation...
--Done.
--Generating on gpu...
Done in 1567982
Writing bmp
Finita.
GPU Name=LogMeIn Mirror Driver
--Initializing computation...
--Done.
--Generating on gpu...
Done in 2488137
Writing bmp
Finita.
GPU Name=LogMeIn Mirror Driver
--Initializing computation...
--Done.
--Generating on gpu...
Done in 4697313
Writing bmp
Finita.
GPU Name=LogMeIn Mirror Driver
--Initializing computation...
--Done.
--Generating on gpu...
Done in 13765283
Writing bmp

Code:
genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

It's still identifying my Nvidia 8800 GT as Logmein Mirror Driver.
 
Levels 4 and 5 worked fine...

Code:
GPU Name=NVIDIA GeForce 8600 GT 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 1079204
Writing bmp
Finita.
GPU Name=NVIDIA GeForce 8600 GT 
--Initializing computation...
--Done.
--Generating on gpu...
Done in 1629284
Writing bmp
Finita.

Level 6, however, caused a flick out of Aero glass mode, then back in, and this:

level6.png


shaderlog was essentially the same as above:

Code:
genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

genprog:
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"

Fragment info
-------------
0(19) : warning C7011: implicit cast from "int" to "float"
0(19) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
0(20) : warning C7011: implicit cast from "int" to "float"
 
i got a BSOD on lvl5... that was on my work rig, GeForce9500... :shrug:
 
I was only able to successfully run the level 4 one:

Code:
GPU Name=NVIDIA GeForce 8200M G
--Initializing computation...
--Done.
--Generating on gpu...
Done in 4162637
Writing bmp
Finita.

Any level after that causes a "display driver stopped responding and has recovered" warning. My GPU is pretty bad and is a laptop one, though.

 

Since I'm about 1300 kilometers away from my real computer, I can't comply currently. I tried it on my laptop, and got what I deserved for it, which is a message saying "not even OpenGL 1.4 is supported!" :lol:

But since most others have reported ok, I'm pretty confident that it will run. Can't really tell before the end of september, though.

I assume this is good news?

to me, that's the best news I heared in a long time! :)
 
Well, Time is relative, It is 3 times as long as lvl 7...

I assume this is good news?
My opinion on this is that is very good news, because each next texture level takes 4 times more space, but is generated less than 4 times longer, i.e. level 4 is only 131072 pixels, level 5 - 524288px, level 6 - 2097152px, level 7 - 8388608px, and level 8 texture has 33554432 pixels.

Let's take for example data from my results:
  • Level 5 generation is taking 1.423 times as long as level 4 generation, but with size included, level 5 is generated 2.811 times faster than level 4.
  • Level 6 generation is taking 2.166 times as long as level 5 generation, but with size included, level 6 is generated 1.847 times faster than level 5.
  • Level 7 generation is taking 3.128 times as long as level 6 generation, but with size included, level 7 is generated 1.279 times faster than level 6.
  • Level 8 generation is taking 3.709 times as long as level 7 generation, but with size included, level 8 is generated 1.078 times faster than level 7.
This gives level 8 texture generated 7.156 faster than level 4 texture on my graphics card, and there are cards that generate each next level even faster (if you take the size of texture into account).
 
Back
Top