Textures that eat memory - Win7 crashes.

For test results, bug reports, announcements of new builds etc.

Moderators: winston, another_commander, Getafix

User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Textures that eat memory - Win7 crashes.

Post by Capt. Murphy »

It looks like issues with crashing due to texture memory allocation failure are fairly commonly reported in recent months.

e.g. Various reports of crashes 'caused' by big_ships (I think it's actually the Liners with the huge textures causing this issue), possibly issues some users have with Wildships etc.

I thought I'd take a few seconds to search my add-ons folder for all the .png files and then ranked them by size to see who the likely culprits are. Here's screenies of the first three pages of the biggest textures. These are the ones that are likely to be causing problems.

Image

Image

Image
Last edited by Capt. Murphy on Thu Apr 05, 2012 7:16 am, edited 3 times in total.
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Re: Textures that eat memory.

Post by Commander McLane »

When the Superhub was first released, my computer couldn't cope with the 4096x4096 texture. It didn't crash, but there were rendering artifacts on the Superhub. I simply reduced the texture size to 2048x2048 and the problem was gone. I even made the reduced texture available for download with pagroove's permission.

As I have the liners.oxp installed now and the ship textures appear without problem, I just checked the original Superhub texture again, and it also displays without problem on my new computer.

Thus I'd recommend to all people with older systems to resize all 4096x4096 textures to 2048x2048. Photoshop, Gimp, or really any photo editing software will do that for you. Even on my current system there is a big difference in both spawning time (the bigger texture produces a quite noticeable stutter when the ship is spawned) and frame rate when close to the object. The quality difference on the other hand is not so big. I have to get fairly close to the Superhub to notice any difference in detail between the bigger and the smaller texture. From the distance both appear the same.

One clarification to Capt. Murphy's list: when scanning the list, disregard the "size" column. The only thing that matters are the dimensions in the last column.
User avatar
pagroove
---- E L I T E ----
---- E L I T E ----
Posts: 3035
Joined: Wed Feb 21, 2007 11:52 pm
Location: On a famous planet

Re: Textures that eat memory.

Post by pagroove »

I've patched the Superhub already to include Commander McLane's resize in the package. As for the liners: I've had no problems with it. But you could resize the Emerald texture if you have problems. Let me know if a version with a lighter texture is needed. Wildships OXP was causing problems on my Mac. But I'm gonna retry in reduced detail mode.

BTW I've had these problems only on Mac. On my desktop PC large textures seems nog problem. Probably due to the good GPU card.
For P.A. Groove's music check
https://soundcloud.com/p-a-groove
Famous Planets v 2.7. (for Povray)
Image
https://bb.oolite.space/viewtopic.php?f=4&t=13709
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Re: Textures that eat memory.

Post by Eric Walch »

Commander McLane wrote:
When the Superhub was first released, my computer couldn't cope with the 4096x4096 texture. It didn't crash, but there were rendering artifacts on the Superhub.
On my old i-mac from 2002, with tiger (osx 4.0), both the old Hammerhead and the Aurora could crash oolite with me. For both a reduction of the texture size solved the problem.
User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Re: Textures that eat memory.

Post by Capt. Murphy »

Commander McLane wrote:

One clarification to Capt. Murphy's list: when scanning the list, disregard the "size" column. The only thing that matters are the dimensions in the last column.
I hadn't realised that McClane - cim put me right in the WildShips thread in that small filesize on dimensionally large textures is just good compression of a 'simple' texture, and the game engine/GPU has to unpack them to the same size anyway. I've updated my list to sort by dimensions - 3 pages of 4096x4096 and 2048x2048 on my current OXP list.

It doesn't appear to be just a problem on old computers McClane - it seems to be a feature on some Win 7 64bit architecture (GPU dependent as-well). I think it's to do with some poorly written 64bit graphics drivers not recognising that a 32bit app has memory limits, but that's just a hunch - nothing more.

I've just done a little experiment - I chose liners as the odd crash I've had has been associated with the big_ships populator and that has been cited by several people in recent months.

Debug-console output - this was a new game/commander launching from Lave and the spawning liners repeatedly - the connection closed is a CTD. Typically this is not 100% reproducible - maybe 25% of the time. I also got a crash on spawning 1/2 dozen WildShips stations and then a couple of liners....

Anyway I'll either manually resize some textures or use hidden-settings to set a limit. Ill also try a 1.76.1 maintenance build as some memory issues have been fixed in trunk and backported.
Type /quit to quit.
Waiting for connection...
Opened connection with Oolite version 1.76
Kills Store set to player score
Initialising OXP Talkative Space Compass
Range in normal space modifier: default. Range in interstellar space modifier: default.
initialising Save Anywhere OXP 3.2
1.74 detected - Neo-Caduceus DCN initialised
0 big trader(s) added to the Lave system.
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Station "Emerald Class Liner" "Emerald Class Liner" position: (-26737.4, 60590.1, 419440) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Station "Emerald Class Liner" "Emerald Class Liner" position: (-64324.4, 48278.6, 423428) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Ship "Aurora Galaxy Liner" position: (-48638.3, 38351.2, 415989) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Station "Emerald Class Liner" "Emerald Class Liner" position: (-50877.8, 41977, 403535) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Ship "Aurora Galaxy Liner" position: (-37603.8, 31329.4, 409416) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Station "Emerald Class Liner" "Emerald Class Liner" position: (-45355.9, 39579, 431411) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Ship "Aurora Galaxy Liner" position: (-52966.2, 44640, 412126) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Station "Emerald Class Liner" "Emerald Class Liner" position: (-29782.8, 46017.5, 419729) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
> system.addShips("liners_liner",1,player.ship,25000)
[[Station "Tigershark" "Tigershark" position: (-41388.3, 28008.8, 418454) scanClass: CLASS_NEUTRAL status: STATUS_IN_FLIGHT]]
> system.addShips("liners_liner",1,player.ship,25000)
Connection closed with no message.
Edit to add - I get a 100% reproducible crash if I spawn at least one of each of an emerald, aurora and a tigershark in the same system. I noticed the wildships populator was adding at least one Wildship station as-well. This is with 1.76 and a 1.76.1 maintenance build.

Even with max-texture size clamped to 2048x2048 I can reliably crash Oolite, by spawning one of each of the wildships stations, one of each of the liners, and then start on one of each of the PAG oldships.

Tried disabling Win7's superfetch in case there was an issue in the release of memory it uses to cache commonly accessed files - no difference.

Next step is to try a debug build and see if anything useful is thrown up.

All of this is on a 6GB 64bit Win 7 machine HD3000 GPU - the GPU on paper uses 1.6GB of the 6GB...but the crashes are happening before it hits this limit :roll:

PAGroove - any chance of 'lite' versions of textures for the liners and PAG_Oldships?
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Re: Textures that eat memory.

Post by Commander McLane »

Capt. Murphy wrote:
Even with max-texture size clamped to 2048x2048 I can reliably crash Oolite, by spawning one of each of the wildships stations, one of each of the liners, and then start on one of each of the PAG oldships.
There was a mention in another thread that even with the max-texture-clamping option the game engine has to load the full texture to memory first, before it can internally resize it. That seems logical. Thus the option is not helpful if the GPU can't cope with a 4096x4096 texture in the first place.

In this case the only option is to manually resize the textures beforehand and save them under their old names, thereby physically replacing the bigger texture.
User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Re: Textures that eat memory - Win7 crashes.

Post by Capt. Murphy »

It seems to help McLane, in that I need to spawn many more ships before I get a crash.

Anyway - here is the backtrace - the .dll reference is the graphics driver OpenGL .dll

This crash was on spawning a WildShips station form v1.00 of the OXP
Steve@WIN7LAPTOP /c/oolite-svn/1.76-maintenance/oolite.app
$ gdb oolite.dbg.exe
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-mingw32"...
(gdb) run
Starting program: c:\oolite-svn\1.76-maintenance\oolite.app/oolite.dbg.exe
[New thread 1436.0x12c8]
[New thread 1436.0xb10]
[New thread 1436.0x71c]
[New thread 1436.0x121c]
[New thread 1436.0xe88]
[New thread 1436.0xa00]
[New thread 1436.0x934]
[New thread 1436.0xe84]
[New thread 1436.0xf64]
[New thread 1436.0x131c]
[New thread 1436.0xfa4]
[New thread 1436.0x1218]
[New thread 1436.0xda8]
[New thread 1436.0x11d4]
[New thread 1436.0x7f8]
[New thread 1436.0xabc]
[New thread 1436.0x1e8]
[New thread 1436.0xe20]
[New thread 1436.0xdd0]
[New thread 1436.0x7c8]
[New thread 1436.0x1354]
[New thread 1436.0xd48]
[New thread 1436.0x438]
[New thread 1436.0x300]
[New thread 1436.0x588]
[New thread 1436.0x1150]
[New thread 1436.0x9d4]
[New thread 1436.0x3a4]
[New thread 1436.0x1298]
[New thread 1436.0x1c8]
[New thread 1436.0x11d0]

Program received signal SIGSEGV, Segmentation fault.
0x075bad18 in ?? () from C:\Windows\SysWOW64\ig4icd32.dll
(gdb) Error: dll starting at 0x772c0000 not found.
Error: dll starting at 0x76d70000 not found.
Error: dll starting at 0x772c0000 not found.
Error: dll starting at 0x76f10000 not found.
bt
#0 0x075bad18 in ?? () from C:\Windows\SysWOW64\ig4icd32.dll
#1 0x4d5d0028 in ?? ()
#2 0x46da0020 in ?? ()
#3 0x0028e730 in ?? ()
#4 0x4d5d0028 in ?? ()
#5 0x000007ff in ?? ()
#6 0x076a90b4 in ig4icd32!DrvValidateVersion ()
from C:\Windows\SysWOW64\ig4icd32.dll
#7 0x00002000 in ?? ()
#8 0x00000800 in ?? ()
#9 0x4d5d0028 in ?? ()
#10 0x05ec1000 in ?? ()
#11 0x21003dec in ?? ()
#12 0x00002000 in ?? ()
#13 0x07f3e55b in ig4icd32!DrvShareLists ()
from C:\Windows\SysWOW64\ig4icd32.dll
#14 0x0028e714 in ?? ()
#15 0x00000000 in ?? ()
Last edited by Capt. Murphy on Thu Apr 05, 2012 11:18 am, edited 1 time in total.
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Re: Textures that eat memory - Win7 crashes.

Post by Capt. Murphy »

Latest log from that crash - the snipped bit contained no errors.
12:05:50.556 [log.header]: Opening log for Oolite version 1.76.1 (x86-32 debug) under Windows at 2012-04-05 12:05:50 +0100.
4 processors detected.
Build options: spoken messages, mass/fuel pricing, JavaScript console support, OXP verifier, localization tools, debug GraphViz support, JavaScript profiling.

Note that the contents of the log file can be adjusted by editing logcontrol.plist.

12:05:50.880 [display.mode.list.native]: Windows native resolution detected: 1366 x 768
12:05:51.132 [joystick.init]: Number of joysticks detected: 0
12:05:51.233 [dataCache.notFound]: No data cache found, starting from scratch.
12:05:51.237 [rendering.opengl.version]: OpenGL renderer version: 3.1.0 ("3.1.0 - Build 8.15.10.2656"). Vendor: "Intel". Renderer: "Intel(R) HD Graphics 3000".
12:05:51.238 [rendering.opengl.extensions]: OpenGL extensions (114):
GL_NV_primitive_restart, GL_ARB_texture_env_crossbar, GL_EXT_abgr, GL_ARB_shadow, GL_IBM_texture_mirrored_repeat, GL_EXT_separate_specular_color, GL_EXT_texture_edge_clamp, GL_EXT_blend_minmax, GL_EXT_draw_buffers2, GL_ARB_texture_env_add, GL_ARB_draw_elements_base_vertex, GL_ARB_sampler_objects, GL_EXT_framebuffer_blit, GL_EXT_transform_feedback, GL_ARB_texture_env_dot3, GL_ARB_texture_query_lod, GL_EXT_framebuffer_object, GL_EXT_blend_subtract, GL_3DFX_texture_compression_FXT1, GL_NV_conditional_render, GL_ARB_vertex_array_bgra, GL_EXT_texture_snorm, GL_ARB_multitexture, GL_EXT_stencil_wrap, GL_ARB_texture_border_clamp, GL_ARB_framebuffer_sRGB, GL_ARB_texture_env_combine, GL_EXT_framebuffer_multisample, GL_EXT_texture_env_add, GL_EXT_packed_pixels, GL_SGIS_texture_edge_clamp, GL_ARB_depth_clamp, GL_INTEL_performance_queries, GL_ARB_uniform_buffer_object, GL_ARB_depth_texture, GL_SGIS_texture_lod, GL_ARB_occlusion_query, GL_ARB_transpose_matrix, GL_NV_texgen_reflection, GL_EXT_stencil_two_side, GL_ARB_seamless_cube_map, GL_ARB_fragment_program_shadow, GL_ARB_shading_language_100, GL_ARB_texture_compression_rgtc, GL_EXT_gpu_program_parameters, GL_EXT_texture_shared_exponent, GL_EXT_rescale_normal, GL_ARB_map_buffer_range, GL_ARB_provoking_vertex, GL_ARB_explicit_attrib_location, GL_ARB_pixel_buffer_object, GL_EXT_secondary_color, GL_ARB_copy_buffer, GL_ARB_half_float_pixel, GL_EXT_blend_equation_separate, GL_EXT_draw_range_elements, GL_ARB_instanced_arrays, GL_EXT_texture_lod_bias, GL_EXT_texture_filter_anisotropic, GL_ARB_half_float_vertex, GL_EXT_texture_swizzle, GL_SGIS_generate_mipmap, GL_ARB_timer_query, GL_ARB_texture_rectangle, GL_ARB_texture_non_power_of_two, GL_ARB_point_sprite, GL_EXT_packed_depth_stencil, GL_ARB_vertex_shader, GL_EXT_texture_compression_s3tc, GL_EXT_texture_integer, GL_ARB_depth_buffer_float, GL_ARB_sync, GL_ARB_draw_instanced, GL_ARB_vertex_buffer_object, GL_WIN_swap_hint, GL_ARB_color_buffer_float, GL_ARB_shader_objects, GL_ARB_texture_rgb10_a2ui, GL_EXT_texture_array, GL_ATI_separate_stencil, GL_ARB_framebuffer_object, GL_EXT_packed_float, GL_ARB_compatibility, GL_EXT_texture_rectangle, GL_ARB_texture_rg, GL_ARB_occlusion_query2, GL_ARB_fragment_shader, GL_EXT_fog_coord, GL_EXT_texture3D, GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_texture_buffer_object_rgb32, GL_ARB_window_pos, GL_ARB_fragment_program, GL_ARB_vertex_program, GL_EXT_texture_env_combine, GL_ARB_point_parameters, GL_ARB_texture_cube_map, GL_EXT_bgra, GL_EXT_compiled_vertex_array, GL_ARB_multisample, GL_ARB_vertex_array_object, GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, GL_ARB_texture_compression, GL_EXT_multi_draw_arrays, GL_ARB_fragment_coord_conventions, GL_ARB_texture_float, GL_EXT_blend_func_separate, GL_EXT_texture_sRGB, GL_EXT_shadow_funcs, GL_ARB_shader_bit_encoding, GL_EXT_clip_volume_hint, GL_EXT_blend_color, GL_NV_blend_square
12:05:51.316 [rendering.opengl.shader.support]: Shaders are supported.
12:05:51.316 [speech.synthesis]: Spoken messages are off.
12:05:51.316 [dataCache.notFound]: No data cache found, starting from scratch.
12:05:51.321 [searchPaths.dumpAll]: Unrestricted mode - resource paths:
Resources
../AddOns
../AddOns/Aquatics 2.27.oxp
../AddOns/Basic-debug.oxp
../AddOns/behemoth 2.6.oxp
../AddOns/BGS-A1.4.oxp
../AddOns/BigShips 1.02.oxp
../AddOns/BountyScannerv2.0.oxp
../AddOns/BountyStatus 1.00.oxp
../AddOns/Breakable_HUD_IFF_Scanner.oxp
../AddOns/Breakable_Shield_Generators.oxp
../AddOns/Breakable_TorusDrive.oxp
../AddOns/Breakable_WitchDrive.oxp
../AddOns/Cabal_Common_Library1.5.1.oxp
../AddOns/ClippersV1.2.oxp
../AddOns/DeepSpacePirates 1.3.oxp
../AddOns/Escape_Capsule_Locator_1.4_2011-12-18.oxp
../AddOns/Escort_Contracts_1.5.3_2012-03-07.oxp
../AddOns/Explorers'_Club_1.3.2_2012-03-05.oxp
../AddOns/Far_Arm_ships_v2.0.oxp
../AddOns/Flight Log 1.03.oxp
../AddOns/Fuel Station 1.34.oxp
../AddOns/Generation Ships.oxp
../AddOns/griff_alloys_and_wreckage.oxp
../AddOns/griff_boa_prototype_normalmapped.oxp
../AddOns/griff_coriolis_normalmapped_alt_halfsize_textures.oxp
../AddOns/griff_krait_v1.1.oxp
../AddOns/griff_missile_normalmapped.oxp
../AddOns/griff_rock_hermit_halfsize_textures.oxp
../AddOns/griff_shipset_all_in_1.oxp
../AddOns/HyperCargo 1.04.oxp
../AddOns/Illegal_goods_tweak_1.6_2012.02.05.oxp
../AddOns/liners_v1.2.oxp
../AddOns/Military Fuel Injectors 1.00.oxp
../AddOns/Naval Grid 1.00.oxp
../AddOns/neocaduceus.oxp
../AddOns/Neolite_Companion_1.1.oxp
../AddOns/Neolite_Core_Addition_1.1.oxp
../AddOns/Neolite_Core_Resources_A_1.1.oxp
../AddOns/Neolite_Core_Resources_B_1.1.oxp
../AddOns/Neolite_Wolfies_1.1.oxp
../AddOns/New_Cargoes_0.7.0.oxp
../AddOns/OMEGA.oxp
../AddOns/Ore_processor 1.58.oxp
../AddOns/OXPConfig2.0.8.oxp
../AddOns/PAG_oldships_v2.5.oxp
../AddOns/Pirate_coves 1.3.oxp
../AddOns/Police_Scanner_Upgrade_1.3.1_2011-12-18.oxp
../AddOns/railgun.oxp
../AddOns/RandomHits1.4.12oxp.oxp
../AddOns/RepairBots 2.03.oxp
../AddOns/Rescue_Stations_1.2.2.oxp
../AddOns/Rock_Hermit_Locator1.3.2.oxp
../AddOns/SaveAnywhere3.2.oxp
../AddOns/sell_equipment.oxp
../AddOns/shady_sungs_replace.oxp
../AddOns/Snoopers2.2.1.oxp
../AddOns/star-jelly v1.1.oxp
../AddOns/Superhubv1.2.oxp
../AddOns/System_Redux.oxp
../AddOns/TalkativeCompass_1.0.3.oxp
../AddOns/Target Autolock Plus 1.12.oxp
../AddOns/Target Reticle 1.2.1.oxp
../AddOns/TCAT 1.10.oxp
../AddOns/thargoidcarrier.oxp
../AddOns/thargoid_wars 4.5.4.oxp
../AddOns/Thargoid_Witchspace_Drive_0.9.3_2012.04.02.oxp
../AddOns/Thargorn_Threat 1.5.oxp
../AddOns/Tori2.01.oxp
../AddOns/Transports 2.52.oxp
../AddOns/UPS-courier v1.7.7.oxp
../AddOns/Vector1.6.oxp
../AddOns/Vortex 1.22.oxp
../AddOns/WildShips 1.00.oxp
../AddOns/Wormhole maker v0.54.oxp
../AddOns/wormhole_restoration.oxp
../AddOns/YOUR_AD_HERE.oxp
../AddOns/YOUR_AD_HERE_set_A.oxp
../AddOns/YOUR_AD_HERE_set_A417_upd.oxp
../AddOns/YOUR_AD_HERE_set_B.oxp
../AddOns/YOUR_AD_HERE_set_B417_upd.oxp
../AddOns/YOUR_AD_HERE_set_C.oxp
../AddOns/YOUR_AD_HERE_set_C417_upd.oxp
../AddOns/YOUR_AD_HERE_set_D.oxp
../AddOns/YOUR_AD_HERE_set_D417_upd.oxp
../AddOns/YOUR_AD_HERE_set_E.oxp
../AddOns/YOUR_AD_HERE_set_E417_upd.oxp
../AddOns/YOUR_AD_HERE_set_F.oxp
../AddOns/YOUR_AD_HERE_set_F417_upd.oxp
../AddOns/YOUR_AD_HERE_set_G.oxp
12:05:51.708 [shipData.load.begin]: Loading ship data.
12:05:52.511 [shipData.load.warning.turret.badWeaponRange]: ----- WARNING: ball turret weapon range of 10000 for subenitity of ship aquatics_mantaRay-military is to high, using 7500.
<snipped lots of these>
12:05:52.999 [shipData.load.warning.turret.badWeaponRange]: ----- WARNING: ball turret weapon range of 10000 for subenitity of ship wildShips_kiota8Ring is to high, using 7500.
12:06:24.376 [texture.load.rescale.maxSize]: GL maximum texture size: 8192
12:06:24.378 [texture.load.asyncLoad]: Loading texture oolite-particle-blur.png
12:06:24.384 [texture.load.asyncLoad.done]: Loading complete.
12:06:24.387 [texture.load.asyncLoad]: Loading texture oolite-particle-flash.png
12:06:24.393 [texture.load.asyncLoad.done]: Loading complete.
12:06:24.408 [texture.load.asyncLoad]: Loading texture oolite-font.png
12:06:24.417 [texture.load.asyncLoad.done]: Loading complete.
12:06:26.067 [script.load.world.listAll]: Loaded 114 world scripts:
aquatics_equipment 1.1
aquatics_populator 2.24
behemoth 2.6
BGS-M 1.4
bigShips_populator 1.0.2
Bounty Scanner 2.0 2.00
Bounty Status Display 1.00
Breakable_HUD_IFF_Scanner 1.1
Breakable_Shield_Generators 1.0
Breakable_TorusDrive 1.0
Breakable_WitchDrive 1.1
Cabal_Common_Briefing 1.5.1
Cabal_Common_Comms 1.5.1
Cabal_Common_Functions 1.5.1
Cabal_Common_Keyboard 1.5.1
Cabal_Common_MissionHandling 1.5.1
Cabal_Common_Music 1.5.1
Cabal_Common_OXPStrength 1.5.1
Cabal_Common_SpecialMarkets 1.5.1
Caduceus Damage Control Node 2.0
CargoTypeExtension 0.7.0
CargoTypeExtension-Auctions 0.7.0
CargoTypeExtension-Base 0.7.0
CargoTypeExtension-Dynamic 0.7.0
CargoTypeExtension-FetchContracts 0.7.0
CargoTypeExtension-OpenContract 0.7.0
CargoTypeExtension-Permits 0.7.0
CargoTypeExtension-Regional 0.7.0
CargoTypeExtension-Scavenger 0.7.0
CargoTypeExtension-TraderNet 0.7.0
clipper_tanks_script.js 1.2
custom_event_handler_sample 0.1
deep_space_pirates 1.3
ecl_SAR_worldscript.js 1.4
ECM_jammerScript 1.00
escapePodLocator.js 1.4
Escort_Contracts 1.5.3
Escort_Contracts_Rep 1.5.3
explorer_club.js 1.3.2
explorer_club_snapshot.js 1.3.2
FlightLog 1.02
FuelStation-Setup 1.33
Generation Ships 1.3
HyperCargo 1.04
illegal_goods_missions 1.6
illegal_goods_tweak 1.7
Manchi Populator 2.0
mil_injectors.js 1.00
murphy-thargoid-drive.js 0.9.3
oolite-cloaking-device 1.76.1
oolite-constrictor-hunt 1.76.1
oolite-nova 1.76.1
oolite-thargoid-plans 1.76.1
oolite-trumbles 1.76.1
oreProcessor 1.57
OXPConfig 2.0.8
PAGroove_superhubPopulator 1.1
Pi-Forty-Two Con stores 4.1.7
Pirate_Coves 1.3
Police_Scanner_Upgrade 1.3.1
railgun 1.3
Random_Hits 1.4.12
Repair system 2.03
Rescue Ambience 1.2.2
Rescue Autopilot 1.2.2
Rescue News 1.2.2
Rescue Scenario 1 1.2.2
Rescue Scenario 1a 1.2.2
Rescue Scenario 1b 1.2.2
Rescue Scenario 2 1.2.2
Rescue Scenario 2a 1.2.2
Rescue Scenario 2b 1.2.2
Rescue Scenario 3 1.2.2
Rescue Scenario 3a 1.2.2
Rescue Scenario 4 1.2.2
Rescue Scenario 4a 1.2.2
Rescue Scenario 4b 1.2.2
Rescue Scenario 5 1.2.2
Rescue Scenario 5a 1.2.2
Rescue Scenario 6 1.2.2
Rescue Scenario 6a 1.2.2
Rescue Stations 1.2.2
reticle_target_sensitive 1.2.1
rockHermit_Locator 1.3.3
Save Anywhere OXP 3.2 3.2
sell_equipment 1.4
snoopers 2.2.1
swi_Jumper 0.54.07 - for Oolite 1.75 and later
System Redux 1.2.2
Talkative Space Compass 1.0.3
targetAutolock 1.11
TCAT_masterScript 1.0
TCAT_missionScript 1.0
Test
thargoid_wars 4.5.4
Thargorn_Witchspace_Battle 1.5
transportSchedule 2.52
ups_container 1.7.7
ups_docs 1.7.7
ups_parcel 1.7.7
ups_slaves 1.7.7
ups_sun 1.7.7
vector 1.6
vector_areidis 1.6
vector_cubes 1.6
vector_insp 1.6
vector_missionArn 1.6
vector_news 1.6
vector_pad 1.6
vector_updater 1.6
vortex_maelstrom.js 1.12
vortex_player.js 1.12
wildShips_populator.js 1.00
wormhole-restoration 1.1
<snipped>
12:07:19.256 [bigShips_populator]: 0 big trader(s) added to the Lave system.
12:07:19.336 [mesh.load.uncached]: Mesh "viper_redux.dat" is not in cache, loading.
12:07:19.340 [texture.load.asyncLoad]: Loading texture adck_viper_redux.png
12:07:19.344 [texture.load.asyncLoad]: Loading texture adck_viper_redux_e.png
12:07:19.355 [texture.load.asyncLoad.done]: Loading complete.
12:07:19.356 [texture.load.asyncLoad.done]: Loading complete.
12:07:19.357 [texture.load.asyncLoad]: Loading texture adck_viper_redux_n.png
12:07:19.380 [texture.load.asyncLoad.done]: Loading complete.
12:07:19.386 [mesh.load.uncached]: Mesh "FA_Sunracer_N.dat" is not in cache, loading.
12:07:19.502 [texture.load.asyncLoad]: Loading texture FA_Sunracer_N.png
12:07:19.509 [texture.load.asyncLoad]: Loading texture FA_Sunracer_lightmap.png
12:07:19.515 [texture.load.asyncLoad]: Loading texture FA_Sunracer_normalmap.png
12:07:19.540 [texture.load.asyncLoad.done]: Loading complete.
12:07:19.567 [texture.load.asyncLoad.done]: Loading complete.
12:07:19.575 [texture.load.asyncLoad.done]: Loading complete.
12:07:20.427 [texture.upload]: Uploaded texture 9 (128x128 pixels, Textures/oolite-star-1.png:0x0007/0/-0)
12:07:20.428 [texture.upload]: Uploaded texture 10 (256x256 pixels, Textures/oolite-nebula-1.png:0x0007/0/0)
12:07:20.429 [texture.upload]: Uploaded texture 11 (256x256 pixels, Textures/oolite-nebula-2.png:0x0007/0/0)
12:07:20.430 [texture.upload]: Uploaded texture 12 (256x256 pixels, Textures/oolite-nebula-3.png:0x0007/0/0)
12:07:20.431 [texture.upload]: Uploaded texture 13 (256x256 pixels, Textures/oolite-nebula-4.png:0x0007/0/0)
12:07:20.437 [texture.upload]: Uploaded texture 14 (512x256 pixels, Textures/planet1.png:0x0827/0/0)
12:07:20.457 [texture.upload]: Uploaded texture 15 (512x512 pixels, (nil))
12:07:20.459 [texture.upload]: Uploaded texture 16 (512x256 pixels, Textures/planet2.png:0x0827/0/0)
12:07:20.466 [texture.upload]: Uploaded texture 17 (512x512 pixels, (nil))
12:07:20.581 [texture.upload]: Uploaded texture 18 (2048x2048 pixels, Textures/wildShips_kiotaHubInner.png:0x0007/0/0)
12:07:20.643 [texture.upload]: Uploaded texture 19 (2048x2048 pixels, Textures/wildShips_kiotaHubGlow.png:0x0047/0/0)
12:07:20.703 [texture.upload]: Uploaded texture 20 (2048x2048 pixels, Textures/wildShips_kiotaHubOuter.png:0x0007/0/0)
12:07:20.802 [texture.upload]: Uploaded texture 21 (1024x1024 pixels, Textures/wildShips_kiotaStrut.png:0x0007/0/0)
12:07:20.866 [texture.upload]: Uploaded texture 22 (2048x2048 pixels, Textures/wildShips_kiotaSolarArray.png:0x0007/0/0)
12:07:20.926 [texture.upload]: Uploaded texture 23 (2048x2048 pixels, Textures/wildShips_kiotaSolarPanels.png:0x0007/0/0)
12:07:21.328 [texture.upload]: Uploaded texture 24 (4096x4096 pixels, Textures/wildShips_kiotaSRing.png:0x0007/0/0)
12:07:21.344 [texture.upload]: Uploaded texture 25 (1024x512 pixels, Textures/home_planet1.png:0x0827/0/0)
12:07:21.361 [texture.upload]: Uploaded texture 26 (512x512 pixels, (nil))
12:07:21.366 [texture.upload]: Uploaded texture 27 (512x256 pixels, Textures/moon1.png:0x0827/0/0)
12:07:21.367 [texture.upload]: Uploaded texture 28 (256x256 pixels, Textures/adck_target_metal.png:0x0007/0/0)
12:07:21.369 [texture.upload]: Uploaded texture 29 (256x256 pixels, Textures/adck_target_metal_e.png:0x0007/0/0)
12:07:21.370 [texture.upload]: Uploaded texture 30 (256x256 pixels, Textures/adck_target_metal_n.png:0x0007/0/0)
12:07:21.373 [texture.upload]: Uploaded texture 31 (512x512 pixels, Textures/aquatics_mantaRay.png:0x0007/0/0)
12:07:21.375 [texture.upload]: Uploaded texture 32 (256x256 pixels, Textures/adck_back_metal.png:0x0007/0/0)
12:07:21.377 [texture.upload]: Uploaded texture 33 (256x256 pixels, Textures/adck_back_metal_e.png:0x0007/0/0)
12:07:21.378 [texture.upload]: Uploaded texture 34 (256x256 pixels, Textures/adck_back_metal_n.png:0x0007/0/0)
12:07:21.380 [texture.upload]: Uploaded texture 35 (256x256 pixels, Textures/adck_bottom_metal.png:0x0007/0/0)
12:07:21.381 [texture.upload]: Uploaded texture 36 (256x256 pixels, Textures/adck_bottom_metal_e.png:0x0007/0/0)
12:07:21.382 [texture.upload]: Uploaded texture 37 (256x256 pixels, Textures/adck_bottom_metal_n.png:0x0007/0/0)
12:07:21.384 [texture.upload]: Uploaded texture 38 (256x256 pixels, Textures/adck_dark_metal.png:0x0007/0/0)
12:07:21.385 [texture.upload]: Uploaded texture 39 (256x256 pixels, Textures/adck_dark_metal_e.png:0x0007/0/0)
12:07:21.386 [texture.upload]: Uploaded texture 40 (256x256 pixels, Textures/adck_dark_metal_n.png:0x0007/0/0)
12:07:21.388 [texture.upload]: Uploaded texture 41 (256x256 pixels, Textures/adck_arcdetail.png:0x0007/0/0)
12:07:21.389 [texture.upload]: Uploaded texture 42 (256x256 pixels, Textures/adck_arcdetail_e.png:0x0007/0/0)
12:07:21.390 [texture.upload]: Uploaded texture 43 (256x256 pixels, Textures/adck_arcdetail_n.png:0x0007/0/0)
12:07:21.393 [texture.upload]: Uploaded texture 44 (512x512 pixels, Textures/oolite-particle-blur.png:0x0407/0.25/0)
12:07:22.508 [mesh.load.cached]: Retrieved mesh "buoy.dat" from cache.
12:07:22.513 [texture.load.asyncLoad]: Loading texture target_metal.png
12:07:22.519 [mesh.load.cached]: Retrieved mesh "buoy.dat" from cache.
12:07:22.519 [texture.load.asyncLoad.done]: Loading complete.
12:07:31.895 [mesh.load.uncached]: Mesh "worm_redux.dat" is not in cache, loading.
12:07:31.900 [texture.load.asyncLoad]: Loading texture adck_worm_redux1.png
12:07:31.904 [texture.load.asyncLoad]: Loading texture adck_worm_redux1_e.png
12:07:31.918 [texture.load.asyncLoad.done]: Loading complete.
12:07:31.918 [texture.load.asyncLoad.done]: Loading complete.
12:07:31.921 [texture.load.asyncLoad]: Loading texture adck_worm_redux1_n.png
12:07:31.938 [texture.load.asyncLoad.done]: Loading complete.
12:07:32.418 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaHub.dat" from cache.
12:07:32.421 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaStrut.dat" from cache.
12:07:32.423 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaLift.dat" from cache.
12:07:32.425 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaStrut.dat" from cache.
12:07:32.428 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaLift.dat" from cache.
12:07:32.431 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaStrut.dat" from cache.
12:07:32.433 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaLift.dat" from cache.
12:07:32.435 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaStrut.dat" from cache.
12:07:32.437 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaLift.dat" from cache.
12:07:32.439 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaStrut.dat" from cache.
12:07:32.441 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaLift.dat" from cache.
12:07:32.443 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaStrut.dat" from cache.
12:07:32.445 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaLift.dat" from cache.
12:07:32.447 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaStrut.dat" from cache.
12:07:32.449 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaLift.dat" from cache.
12:07:32.451 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaStrut.dat" from cache.
12:07:32.453 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaLift.dat" from cache.
12:07:32.455 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaSRing.dat" from cache.
12:07:32.459 [mesh.load.uncached]: Mesh "wildShips_kiotaLRing.dat" is not in cache, loading.
12:07:32.475 [texture.load.asyncLoad]: Loading texture wildShips_kiotaLRing.png
12:07:32.924 [texture.load.asyncLoad.done]: Loading complete.
12:07:36.698 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaTurret.dat" from cache.
12:07:36.700 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaTurret.dat" from cache.
12:07:36.702 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaTurret.dat" from cache.
12:07:36.704 [mesh.load.cached]: Retrieved mesh "wildShips_kiotaTurret.dat" from cache.
12:07:36.738 [mesh.load.cached]: Retrieved mesh "FA_Sunracer_N.dat" from cache.
12:07:36.776 [texture.upload]: Uploaded texture 45 (1024x1024 pixels, Textures/wildShips_kiotaLift.png:0x0007/0/0)
12:07:36.794 [texture.upload]: Uploaded texture 46 (1024x1024 pixels, Textures/wildShips_kiotaLiftGlow.png:0x0007/0/0)
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Re: Textures that eat memory - Win7 crashes.

Post by Capt. Murphy »

Tried it again without Wildships - was spawning liners and PAG Oldships - had to spawn one of each liner, a superhub, and then all of the PAG oldships - it eventually crashed on spawning a salamander.

The backtrace is identical. The log is huge, but with many many of these all related to the aurora and the tigershark. They only show up after the super hub was spawned.
Line 60475: 12:25:44.317 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x1469ace0>{"liners_aurora.dat", 18 vertices, 28 faces, radius: 3572.97 m normals: per-face}
Line 60475: 12:25:44.317 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x1469ace0>{"liners_aurora.dat", 18 vertices, 28 faces, radius: 3572.97 m normals: per-face}
Line 60476: 12:25:44.317 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x141d9298>{"liners_auroraEngineA.dat", 240 vertices, 414 faces, radius: 688.845 m normals: per-face}
Line 60476: 12:25:44.317 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x141d9298>{"liners_auroraEngineA.dat", 240 vertices, 414 faces, radius: 688.845 m normals: per-face}
Line 60477: 12:25:44.318 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x11a05940>{"liners_auroraEngineB.dat", 240 vertices, 414 faces, radius: 589.723 m normals: per-face}
Line 60477: 12:25:44.318 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x11a05940>{"liners_auroraEngineB.dat", 240 vertices, 414 faces, radius: 589.723 m normals: per-face}
Line 60478: 12:25:44.318 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x13e22638>{"liners_auroraEngineC.dat", 240 vertices, 414 faces, radius: 708.784 m normals: per-face}
Line 60478: 12:25:44.318 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x13e22638>{"liners_auroraEngineC.dat", 240 vertices, 414 faces, radius: 708.784 m normals: per-face}
Line 60479: 12:25:44.318 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x147ac380>{"liners_auroraEngineD.dat", 240 vertices, 414 faces, radius: 696.8 m normals: per-face}
Line 60479: 12:25:44.318 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x147ac380>{"liners_auroraEngineD.dat", 240 vertices, 414 faces, radius: 696.8 m normals: per-face}
Line 60480: 12:25:44.318 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x119705e8>{"liners_tigershark.dat", 125 vertices, 236 faces, radius: 1172.09 m normals: per-face}
Line 60480: 12:25:44.318 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x119705e8>{"liners_tigershark.dat", 125 vertices, 236 faces, radius: 1172.09 m normals: per-face}
Line 60487: 12:25:44.579 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x1389e880>{"liners_tigershark.dat", 125 vertices, 236 faces, radius: 1172.09 m normals: per-face}
Line 60487: 12:25:44.579 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x1389e880>{"liners_tigershark.dat", 125 vertices, 236 faces, radius: 1172.09 m normals: per-face}
The first error
12:22:11.646 [texture.upload]: Uploaded texture 72 (4096x4096 pixels, Textures/liners_tigershark.png:0x0007/0/0)
12:22:12.136 [texture.upload]: Uploaded texture 73 (4096x4096 pixels, Textures/liners_tigersharkNormal.png:0x0007/0/0)
12:22:12.322 [texture.upload]: Uploaded texture 74 (512x512 pixels, Textures/liners_tigersharkDock.png:0x0007/0/0)
12:22:23.605 [mesh.load.uncached]: Mesh "pagroove_superhub_mainhull.dat" is not in cache, loading.
12:22:23.757 [texture.load.asyncLoad]: Loading texture pagroove_superhub_diffuse.png
12:22:24.411 [texture.load.asyncLoad.done]: Loading complete.
12:22:28.690 [mesh.load.uncached]: Mesh "pagroove_superhub_ring1.dat" is not in cache, loading.
12:22:28.841 [mesh.load.uncached]: Mesh "pagroove_superhub_ring2.dat" is not in cache, loading.
12:22:29.077 [texture.upload]: Uploaded texture 75 (4096x4096 pixels, Textures/pagroove_superhub_diffuse.png:0x0007/0/0)
12:22:31.129 [rendering.opengl.error]: OpenGL error: "invalid operation" (0x502), context: OOMesh after drawing <OOMesh 0x1469ace0>{"liners_aurora.dat", 18 vertices, 28 faces, radius: 3572.97 m normals: per-face}
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
User avatar
Gimi
---- E L I T E ----
---- E L I T E ----
Posts: 2073
Joined: Tue Aug 29, 2006 5:02 pm
Location: Norway

Re: Textures that eat memory - Win7 crashes.

Post by Gimi »

I had a lot of those errors related to wildships, but they are all gone now after I upgraded my nVidia graphics drivers. Would you mind PM'ing some (many :D ) spawn commands that I can use in the console. I'm not very proficient at using it.
"A brilliant game of blasting and trading... Truly a mega-game... The game of a lifetime."
(Gold Medal Award, Zzap!64 May 1985).
User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Re: Textures that eat memory - Win7 crashes.

Post by Capt. Murphy »

I've posted this on the Intel support forums as it appears to be a crash caused by the driver. I wonder if they'll understand the gdb output... :roll:
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Re: Textures that eat memory - Win7 crashes.

Post by Capt. Murphy »

I've maybe got a clue to what is happening here, and it might be an Oolite bug, or it might not....!

More messing with spawning entities has narrowed down the common factor to be the tigershark. Sometimes the crash is on spawning a tigershark, other times a tigershark has already been spawned.

The crashes can be cured by deleting the tigershark shader entry from shipdata.plist so that it's not using the normalmap, or by resizing both the normal map and regular texture to 2048x2048.

Both the regular texture and the normal map are 4096 x 4096. Sometime but not always the log has an error re not able to allocate memory for the tigershark - it's saying it needs 64MB, which is expected at that texture size (for a single texture). The thing is the GPU has got plenty of available memory when this happens.

Now this is where it gets complicated, and where my nascent understanding may be way of out of wack. The HD3000 can use upto 1.6GB of the 6GB system memory. At boot up it will be allocate a minimum amount of memory. How much depends on the hardware and may or may not be adjustable via BIOS (in my case not). On my system it starts with 32MB. Apparently this is reported to applications as the dedicated VRAM. The actual video memory in use is reported as dynamic VRAM.

With Oolite in full swing (and when these crashes occur) it's typically using 300 - 600 MB, but no where near the 1.6GB limit.

Now what is interesting is that the crashes only occur when the tigershark normalmap is used and the texture size is 4096 x4096. Is there any difference in the Oolite code in the way that available texture memory is checked when shaders are used and are combining multiple textures, compared to just loading the single texture from the .dat file?

The Intel forums note that some games that refuse to run at all on this GPU are at fault because they check for dedicated VRAM rather than the dynamic, and I wonder if anything similar could be happening here?

Edit to add - I've confirmed I can use upto 1.6GB of video memory, by spawning lots of everything other than a tigershark - with quite a few ship OXP,s and 3 retuxture packs installed 50 stations, 50 traders, and 50 pirates took me to about 1.4GB, 50 police took me over the limit...CTD - log has OpenGL error: "out of memory" (0x505) error.
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Re: Textures that eat memory - Win7 crashes.

Post by Capt. Murphy »

Obviously being a little bit OCD about this :wink: , I've continued to experiment, using process explorer (which has a facility to track GPU memory usage for a particular process), to watch the actual GPU memory usage increase as entities are manually spawned. I also changed the liners to have 0 escorts for the purposes of these tests. All done in full shaders.

Results :

Tigershark - original textures size 4096x4096 base texture and normal map - 195.8MB required :shock:
Tigershark - both textures resized to 2048 x 2048 - 43.9MB required - :)

Aurora - original textures size 4096 x 4096 - 94.2MB required....
Aurora - max-textures-size clamped to 2048 (I can't work out how to manually resize the aurora texture without losing the funky transparency) - 29.2 MB required.

Emerald - original texture size - 2048 x 2048 - 3 textures - 76.2MB required
Emerald - all 3 resized to 1024 x 1024 - 13.8MB required

PAG Oldships - original textures - 3 x 2048x 2048 - each ship requires approx 70-80MB
PAG Oldships - all textures resized to 1024 x 1024 - each ship requires approx 12-14MB

PAGroove - I really think there's a case to release a lite version of liners (with the aurora, tigershark and emerald textures cut to 1/2 size) and a PAG-OldShips lite. Although my crash appears to be a bug in my particular graphics driver as it should be handle the tigershark (and does unless it's already using more than 300-400MB), there have been a number of folk reporting crashes which they associate with the bigships populator, and the tigershark in particular is so resource hungry that I would have thought it could push a lot of GPUs over the edge.
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
User avatar
Capt. Murphy
Commodore
Commodore
Posts: 1127
Joined: Fri Feb 25, 2011 8:46 am
Location: UK South Coast.

Re: Textures that eat memory - Win7 crashes.

Post by Capt. Murphy »

Some more clues....

The HD3000 is using system memory of upto 1.6GB for graphics memory. Processor Explorer indicates this is included in Oolite total memory usage...

another_commander wrote (https://bb.oolite.space/viewtopic.ph ... it#p165291).
another_commander wrote:
You can set your virtual memory to as many terabytes as you want, but you have to remember that Oolite is built as a 32-bit application. This means that the maximum memory size visible for this and any other 32-bit app on Windows is 2GB or 4GB, depending on whether IMAGE_FILE_LARGE_ADDRESS_AWARE is cleared or not. See this for more information: http://msdn.microsoft.com/en-us/library ... s.85).aspx

You are basically hitting the 32-bit memory access limit, not your computer's physical memory capacity limit.

Edit: Fixed link. phpbb's automatic link recognition failed earlier.
Looking at Oolite's image header with process explorer it doesn't look like this flag is set and I don't think it's possible to set it at compile time with the current development environment? Hopefully I'm wrong.

So my crashes are probably because Oolite is hitting a 2GB limit, most of which is down the the GPU happily munching away at up to 1.6GB of the 32bit application memory space.

Now looking for a way to set this flag post compile.
[EliteWiki] Capt. Murphy's OXPs
External JavaScript resources - W3Schools & Mozilla Developer Network
Win 7 64bit, Intel Core i5 with HD3000 (driver rev. 8.15.10.2696 - March 2012), Oolite 1.76.1
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6626
Joined: Wed Feb 28, 2007 7:54 am

Re: Textures that eat memory - Win7 crashes.

Post by another_commander »

Capt. Murphy wrote:
Looking at Oolite's image header with process explorer it doesn't look like this flag is set and I don't think it's possible to set it at compile time with the current development environment? Hopefully I'm wrong.

So my crashes are probably because Oolite is hitting a 2GB limit, most of which is down the the GPU happily munching away at up to 1.6GB of the 32bit application memory space.

Now looking for a way to set this flag post compile.
Try adding this to the linker options in the makefile: -Wl,--large-address-aware. I am not sure right now if the linker version supplied with the build environment for Oolite on Windows has this option available. Note also this, from the gcc linker's documentation:
The documentation wrote:
--large-address-aware
If given, the appropriate bit in the “Charateristics” field of the COFF header is set to indicate that this executable supports virtual addresses greater than 2 gigabytes. This should be used in conjuction with the /3GB or /USERVA=value megabytes switch in the “[operating systems]” section of the BOOT.INI. Otherwise, this bit has no effect. [This option is specific to PE targeted ports of the linker]
Post Reply