PDA

View Full Version : [Interface] HoN shop hard drive access



VHD
02-13-2012, 07:28 PM
There was a rejected thread on this earlier due to confusion over which shop was being discussed (in-game vs Merrik's HoN shop).

This is an issue with Merrik's (sp?) HoN shop - NOT the in-game item shop.

I have multiple hard drives - a SSD for my OS, applications, etc and several mechanical disk drives for data storage. My mechanical disk drives go into a low power sleep mode when they haven't been accessed recently.

When I click the "Store" button from the main HoN screen, there is a long (5 second?) delay before the store is shown. I can physically hear all my mechanical drives start spinning up. During that time, HoN is completely frozen.

For some reason, clicking the shop is attempting to read/write to other mechanical drive(s) - even though HoN and my OS are on a totally different SSD drive.

I don't expect this to be a problem with most users that have a single hard drive or don't have power save on other mechanical drives.

Evil_Andrex
02-13-2012, 08:01 PM
Come to think of it, this might be because HoN is looking through all of the drives for shop content.

VHD
02-13-2012, 09:27 PM
That's what I was thinking. But I assume the default place to look is in the HoN install directory. And if it finds the shop files there, I would hope it wouldn't spin up all my drives...

Evil_Andrex
02-13-2012, 09:54 PM
Have you tried to check in with tech support? They are a whole lot better at this that we are.

VHD
02-14-2012, 02:41 PM
I'd be happy to do that, but I strongly suspect it is part of the HoN shop engine. I don't think there's anything I can do at my end (aside from keeping my drives from going to low power sleep mode in the first place).

It's nothing game breaking, but should be relatively easy for S2 to optimize the code to avoid this.

I'll see what tech support has to say.

Evil_Andrex
02-14-2012, 05:31 PM
Thank you, I'll leave this here for an extended amount of time for this case.

VHD
02-14-2012, 07:37 PM
Thanks, Evil_Andrex. Tech support thread is: http://forums.heroesofnewerth.com/showthread.php?p=14894365

Can anyone else with multiple drives (that go into sleep mode) confirm the same symptoms?

Ninja101
02-15-2012, 07:14 PM
Awaiting reply from the devs regarding this.

uberamd
02-16-2012, 11:11 AM
Brief Description: When loading the HoN Goblin Store all of my external and internal hard drives, that are NOT my primary drive, spin up. HoN becomes unresponsive until the external hard drive is completely spun up from its idle state. This takes roughly 15-20 seconds and in turn locks up the game. If the Store icon is clicked while in a game the server will think the client has disconnected and walk the character back to the pool.

How to Replicate:

Plugin an external hard drive and wait for it to go into standby mode (where the drive is no longer spinning)
Launch HoN
(optional) Load into a game
Click on the Goblin Store icon
Listen as the external hard drives begin to spin up. The game will appear frozen, and any audio playing at the time will pause and loop every 2 seconds until the external drive is spinning at full speed
Once the external drive is completely awake from sleep, the store resumes and your character stops walking back to the pool


Match ID& In-Game Timestamps: N/A

Note that I can replicate this 100% of the time on my computer. I am running a quad core 3.2GHz AMD CPU with 16GB of RAM. The ONLY action that causes HoN to freeze/stall is opening the shop while an external drive is plugged in. Once the external drive is removed the shop opens like normal.

uberamd
02-16-2012, 12:01 PM
Thanks, Evil_Andrex. Tech support thread is: http://forums.heroesofnewerth.com/showthread.php?p=14894365

Can anyone else with multiple drives (that go into sleep mode) confirm the same symptoms?

IDK how I missed this, but yes I have the EXACT same issue: http://forums.heroesofnewerth.com/showthread.php?t=393344

Evil_Andrex
02-16-2012, 01:03 PM
Merging.

VHD
03-07-2012, 05:37 PM
Still experiencing this bug... Can anyone else corroborate so that we can get this bug confirmed and addressed in future patches?

Again, the delay happens when one or more drives go into a low power sleep/standby mode and you attempt to access Merrick's shop. Everything freezes until the drives spin up - even though they are not associated with HoN at all.

Naib
03-08-2012, 05:39 AM
i have been "tasked" to gdb the linux client on this - personal commitment delayed this.

there is a vast amount if disk access for the merrik shop - i got my box essencially i/o hdd bound during a couple of big installs, hon shop was essencially frozen for 1min

ill get the debug info shortly - damn macro planning events...

Korrigan
03-08-2012, 05:01 PM
I have the exact same problem with the shop and I also have the same problem after a game when the stats load (started 1-2 patches ago)

tiGa
05-06-2012, 12:19 AM
i've always noticed my second harddrive kicking on when i open the shop but i've always ignored it. its always just been annoying that it takes longer than necessary to start up the shop but not a horrible problem.

Naib
05-07-2012, 04:33 PM
I have just stared down a few meg of strace dump JUST around access the shop.

4301 1336422239.683438 access("/opt/HoN/base/...
4301 1336422239.683466 access("/home/Naib/.Heroes of Newerth/game/...

are the only area's that are being accessed on my machine NOTE I have 3 hdd plus a number of network shares so I would see if it was trying to access anything outside of these two expected locations.


Now admittedly this is for linux but this was an initial looksee. I am going to install HoN in WINE and do exactly the same thing, different parts of the OS then appear as virtual drives thus I should be able to see if HoN.exe accesses anywhere outside of home and program files

CopperCore
05-13-2012, 04:58 PM
This is so annoying! HDD also spins up at after-game-stats-screen. I need a fix please :((

Naib
05-14-2012, 09:26 AM
I can't spot anything in the linux client or the windows client accessing anything other than files in HOME and files in PROGRAMS.
I even went through the pain of an strace on wine hon.exe (sooo slow).

I wonder if those cheap drive controllers (Jmicron and co) are being used?


in short, HoN doesn't seem to be accessing anything other that those two expected directories and thus isn't itself waking up the drives (they would wakeup if HoN requested something from say drive z:\ and this was the drive that had span down).


I am not saying HoN isn't in part responsible for this, just it isn't directly querying all drives/partitions and thus some more data is required as well as looking elsewhere

drivers, anti-virus (some, especially semantic can be quite ... annoying)

VHD
05-14-2012, 08:11 PM
I can't spot anything in the linux client or the windows client accessing anything other than files in HOME and files in PROGRAMS.
I even went through the pain of an strace on wine hon.exe (sooo slow).

I wonder if those cheap drive controllers (Jmicron and co) are being used?


in short, HoN doesn't seem to be accessing anything other that those two expected directories and thus isn't itself waking up the drives (they would wakeup if HoN requested something from say drive z:\ and this was the drive that had span down).


I am not saying HoN isn't in part responsible for this, just it isn't directly querying all drives/partitions and thus some more data is required as well as looking elsewhere

drivers, anti-virus (some, especially semantic can be quite ... annoying)

Thanks for digging into this - even if it didn't lead to answers yet. Still happens to me and others, so I'm sure a good explanation exists out there somewhere.

Just in case it makes a difference, I'm running Windows 7 64-bit Pro.

nethergate
05-15-2012, 11:07 AM
experiencing same problem on win7 64bit as well

connta
05-15-2012, 04:11 PM
i am another person to expirience this, whenever i click on goblin shop all of my 3 data drives which have nothing to do with hon wake up from sleep

it cant be anything but hon since this happens specifically when i click the goblin shop, it is not drivers or anti virus anyone feeding us this is just avoiding the problem i must say. i do not have some enormous IT experience but i have enough to know that no anti virus, drivers or hdd controllers will be tied to goblin store in hon, there is just no way this is the case, none of these things are ever aware of what is happening inside hon. its almost like saying that your hdd controller will go haywire when you pick Scout... please.

i wish someone would take this thing seriously.

Naib
05-15-2012, 04:23 PM
i am another person to expirience this, whenever i click on goblin shop all of my 3 data drives which have nothing to do with hon wake up from sleep

it cant be anything but hon since this happens specifically when i click the goblin shop, it is not drivers or anti virus anyone feeding us this is just avoiding the problem i must say. i do not have some enormous IT experience but i have enough to know that no anti virus, drivers or hdd controllers will be tied to goblin store in hon, there is just no way this is the case, none of these things are ever aware of what is happening inside hon. its almost like saying that your hdd controller will go haywire when you pick Scout... please.

i wish someone would take this thing seriously.
Please calm down and re-read EXACTLY what I wrote.
emotional replies to a bugquery cloud any useful infomation.

You will notice this hasn't been moved to rejected BUT posts like this will

Phfor
05-17-2012, 03:47 AM
Having the same issue here. Internal and external drives that are in sleep mode from idling all spin up upon entering the Goblin Shop. Internal only causes a 5-7 second delay, however externals cause 15-30 second hangtimes (the larger capacity the drive, the longer the wait it seems).

Can deal with it, would be nice to have it fixed though - might be able to buy alt avatars while in the character select screen...

VHD
05-17-2012, 09:42 AM
i am another person to expirience this, whenever i click on goblin shop all of my 3 data drives which have nothing to do with hon wake up from sleep

it cant be anything but hon since this happens specifically when i click the goblin shop, it is not drivers or anti virus anyone feeding us this is just avoiding the problem i must say. i do not have some enormous IT experience but i have enough to know that no anti virus, drivers or hdd controllers will be tied to goblin store in hon, there is just no way this is the case, none of these things are ever aware of what is happening inside hon. its almost like saying that your hdd controller will go haywire when you pick Scout... please.

i wish someone would take this thing seriously.

Naib has clearly taken this issue seriously if you read the last few posts. He's invested time tracking this issue down and been very transparent with his results so far. I wish you would appreciate that...

If there is anything I can do to help track this issue, just let me know. Happy bug hunting!

ElementUser
06-11-2012, 10:30 AM
Moving to Indeterminate, will file in bug tracker.

TurboHydra
06-11-2012, 11:13 AM
I am experiencing this too. However, in my case, I thought it is happening because I am using different drive for paging file and system(system is on ssd c: and paging is hdd e: )
However, I am sure that ALL of my drives are being waked up instead of 1(so 2 hdds are starting up again). It is extremely annoying, because my comp freezes for a few seconds, before becoming accesible again.

Naib
06-11-2012, 06:58 PM
Start HoN


strace -p $(pgrep hon-x86) -s 512 -f -o ~/dump.txt


Access shop, access alt avatars. ~3sec freeze.
Quit HoN and view dump




...
8289 access("/opt/HoN/game/heroes/flint_beastwood/ability_03/ability_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/base/heroes/flint_beastwood/ability_03/ability_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/heroes/flint_beastwood/ability_03/ability_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/base/heroes/flint_beastwood/ability_03/ability_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/heroes/flint_beastwood/ability_03/ability.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/heroes/flint_beastwood/ability_03/ability.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/heroes/flint_beastwood/ability_04/ability_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/base/heroes/flint_beastwood/ability_04/ability_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/heroes/flint_beastwood/ability_04/ability_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/base/heroes/flint_beastwood/ability_04/ability_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/heroes/flint_beastwood/ability_04/ability.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/heroes/flint_beastwood/ability_04/ability.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/heroes/flint_beastwood/ability_04/gadget_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/base/heroes/flint_beastwood/ability_04/gadget_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/heroes/flint_beastwood/ability_04/gadget_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/base/heroes/flint_beastwood/ability_04/gadget_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/heroes/flint_beastwood/ability_04/gadget.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/heroes/flint_beastwood/ability_04/gadget.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/heroes/flint_beastwood/ability_04/projectile_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/base/heroes/flint_beastwood/ability_04/projectile_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/ui/fe2/store/alt_platform/material_en.material", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/base/ui/fe2/store/alt_platform/material_en.material", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/ui/fe2/store/alt_platform/material_en.material", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/base/ui/fe2/store/alt_platform/material_en.material", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/ui/fe2/store/alt_platform/material.material", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/ui/fe2/store/alt_platform/material.material", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/core/shaders/vs_glsl/mesh_depth_opacity.vsh", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/core/shaders/vs_glsl/mesh_depth_opacity.vsh", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/core/shaders/ps_glsl/mesh_depth_opacity.psh", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/core/shaders/ps_glsl/mesh_depth_opacity.psh", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/core/shaders/vs_glsl/mesh_color_enviro_unit.vsh", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/core/shaders/vs_glsl/mesh_color_enviro_unit.vsh", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/naib/.Heroes of Newerth/game/core/shaders/ps_glsl/mesh_color_enviro_unit_team_spec_reflectmask4.psh", F_OK) = -1 ENOENT (No such file or directory)

...
13,000 lines
...








It seems HoN is trying to access the resouce0.s2z filestructure as if it is unzipped in your HOME or PROG directory. It can use such data, but wtf is it checking soo aggressively

It's only checking in PROG and HON for a flat resource0.s2z layout (ie like mods) but it is checking every single possible entity

Naib
06-11-2012, 07:01 PM
Also as a case point:



grep wisp dump.txt
8289 read(24, "\0\0\0\0\0\0\0C\334\232\2heroes/artesia/ability_03/projectile2.entityPK\1\2\24\0\24\0\0\0\10\0\326k&@\370$\200!\366\0\0\0\207\1\0\0.\0\0\0\0\0\0\0\0\0 \0\0\0\0\177\335\232\2heroes/artesia/ability_03/projectile2_b.entityPK\1\2\24\0\24\0\0\0\10\0\326k&@M\302\272\272\17\1\0\0\313\1\0\0-\0\0\0\0\0\0\0\0\0\0\0\0\0\301\336\232\2heroes/artesia/ability_03/projectile_b.entityPK\1\2\24\0\24\0\0\0\10\0\326k&@\3332\177\205\361\1\0\0\f\10\0\0,\0\0\0\0\0\0\0\0 \0\0\0\0\0\33\340\232\2heroes/artesia/ability_03/state_bolts.entityPK\1\2\24\0\24\0\0\0\10\0\326k&@\316GB\201\346\1\0\0G\7\0\0001\0\0\0\0\0\0\0\0\0\ 0\0\0\0V\342\232\2heroes/artesia/ability_03/state_bolts_wisp.entityPK\1\2\24\0\24\0\0\0\10\0\3 26k&@X\277\31\357\240\0\0\0\317\0\0\0000\0\0\0\0\0\0\0 \0\0\0\0\0\0\213\344\232\2heroes/artesia/ability_03/state_invisible.e"..., 4096) = 4096
8289 access("/opt/HoN/game/heroes/artesia/ability_03/state_bolts_wisp_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/base/heroes/artesia/ability_03/state_bolts_wisp_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/jrb/.Heroes of Newerth/game/heroes/artesia/ability_03/state_bolts_wisp_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/jrb/.Heroes of Newerth/base/heroes/artesia/ability_03/state_bolts_wisp_en.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/home/jrb/.Heroes of Newerth/game/heroes/artesia/ability_03/state_bolts_wisp.entity", F_OK) = -1 ENOENT (No such file or directory)
8289 access("/opt/HoN/game/heroes/artesia/ability_03/state_bolts_wisp.entity", F_OK) = -1 ENOENT (No such file or directory)


so it has accessed the file from the in-memory resource0.s2z but then it proceeds to check the two possible disk locations for replacements.
It does this for every single query - ie alot of disc read requests BUT only to these 2 locations.

Why would it try to access these locations for alts from teh store?



Still nothing to indicate drives being woken up, unless windows is DERPing during these large query times.
Still lacking any infomation besides "I experience this"

SysInternals has some great tool's to list what an application is doing and when

Inomares
11-11-2012, 11:24 AM
Seeing as it's been half a year since someone last reported this, and HoN does not activate any of my secondary HDDs, I'll assume this has been fixed.