Jump to content
LaunchBox Community Forums

Very slow performance in BB


cammelspit

Recommended Posts

@Jason Carr I said I would record a video of the performance issues I was having with BB. I mentioned it Monday on the stream but have had this problem only much worse for the last month or two at least. You asked me to remove the custom filters from my LB altogether and I must say, it has helped immensely. The video is after I removed the filters. Thing is, it is, as you might be able to tell, still very very slow. At least BB doesn't freeze for over a minute while changing platforms anymore. I was wondering if you could take a quick peek at the video and tell me if that kind of hitching and slowdowns is a normal thing for BB with a large library. My LB is installed onto my Samsung 850Pro 512GB SSD so the storage throughput is certainly not an issue. I also tried putting my LB on both of my 4TB HGST NAS drives and on an old as the hills and twice as crusty 1TB Toshiba desktop drive and it performs essentially identical with the only drive causing even slightly slower browsing being the Toshiba, which is to be expected. The long load time for BB to open initially is no big deal for me, really. I would gladly have it take minutes longer if it could just scroll smoothly.

I know it is not for me to say here, since this is your baby and all that. LB seems to very rarely if ever use more than one core. Would it not be a good idea to have subsequent cores load games ahead of time instead of relying on just the one core to do it all? Also, I recall you mentioning on another thread some time ago that LB/BB has to scan through the entire library while loading metadata or images, something like that. Pre-loading ahead of time might be a good place to start. But you don't have to take my word for it... :P

Core i5 6600K @4.5Ghz | R9380@1010Mhz | 16GB 2x8 G.Skill Ripjaw @ 3200Mhz | Windows 10 Pro X64 | Samsung850 Pro 512GB SSD | LaunchBox/BigBox 7.0-4

Link to comment
Share on other sites

Hi @cammelspit, we do already use multiple cores, but there's always more that can be done. Oddly it's looking like it's taking an extra long time to load the game details specifically. I'm not sure why that is. Hopefully we can focus more on performance improvements here soon. Feel free to send me your Data folder so I can test with it. jason@unbrokensoftware.com

Link to comment
Share on other sites

On 11/8/2016 at 10:55 AM, cammelspit said:

@Jason Carr I said I would record a video of the performance issues I was having with BB. I mentioned it Monday on the stream but have had this problem only much worse for the last month or two at least. You asked me to remove the custom filters from my LB altogether and I must say, it has helped immensely. The video is after I removed the filters. Thing is, it is, as you might be able to tell, still very very slow. At least BB doesn't freeze for over a minute while changing platforms anymore. I was wondering if you could take a quick peek at the video and tell me if that kind of hitching and slowdowns is a normal thing for BB with a large library. My LB is installed onto my Samsung 850Pro 512GB SSD so the storage throughput is certainly not an issue. I also tried putting my LB on both of my 4TB HGST NAS drives and on an old as the hills and twice as crusty 1TB Toshiba desktop drive and it performs essentially identical with the only drive causing even slightly slower browsing being the Toshiba, which is to be expected. The long load time for BB to open initially is no big deal for me, really. I would gladly have it take minutes longer if it could just scroll smoothly.

I know it is not for me to say here, since this is your baby and all that. LB seems to very rarely if ever use more than one core. Would it not be a good idea to have subsequent cores load games ahead of time instead of relying on just the one core to do it all? Also, I recall you mentioning on another thread some time ago that LB/BB has to scan through the entire library while loading metadata or images, something like that. Pre-loading ahead of time might be a good place to start. But you don't have to take my word for it... :P

Core i5 6600K @4.5Ghz | R9380@1010Mhz | 16GB 2x8 G.Skill Ripjaw @ 3200Mhz | Windows 10 Pro X64 | Samsung850 Pro 512GB SSD | LaunchBox/BigBox 7.0-4

@Jason Carr I would have to agree with Camelspit on this one. I'm migrating over a 8tb drive from hyperspin to launchbox and the performance should be priority before more features are added. I don't think the issue is with my pc since it is a highend pc. 

1. Big Box startup time should be less than 10 seconds to start.

2. Importing roms is taking a lot of time out of actually tinkering with the software to customize the build. What is actually being done during the importing of roms. Is it just building the database xml file and creating the folder tree for the platform? I ask because even if I just go through the process to import the roms without the options to download any media or metadata the process is still lengthy.  

AMD 8350 overclocked - Sapphire 8GB RX480 OC Nitro - Samsung Pro SSD 250GB (Launchbox) - 2 HGST 4TB (Game Drive) - 16GB G.Skill ripjawz 1866Mhz

Link to comment
Share on other sites

@Jason Carr I think I may have tracked down the cause of this problem, or maybe just one of the causes but here goes. I happened to be browsing in BB again just testing it out and I came to notice that the only games that hiccuped like in my first video in the OP were games that did not have front box art. So, I went and turned off all of the image priorities and left ONLY the front box art and reopened BB. When I did, the performance was MANY times that of what it was and the whole of BB didn't become unresponsive and crash when sorting by a letter. The first part of this new video below is like that. as you can see, I turned the image priorities back on and then it bogs down just like it was. At the end of my new video, you can plainly see that BB becomes entirely unresponsive, it won't back out to the platform selection nor will it open any game I try to. and I also show how it is eating nearly 100% of my CPU with almost zero disk usage.

This tells me that there is something going on with the image priorities as a whole that are simply killing the performance of BB. I wish I had been able to catch it when BB crashed outright but it just wouldn't do it for me when I was actually recording but I can assure you I got it to CTD at least three times and a few not responding errors before I decided to try and replicate it for a video to show you. The only reason I want to use image priorities is because I can't filter out games without images in BB so I figured any image is better than no images. Though, it seems like this was somewhat of a mistake. It also GREATLY improved performance in regular LB as well so I am sure there is something that desperately needs investigating here.

If you need me to test something else just let me know.

Core i5 6600K @4.5Ghz | R9380@1010Mhz | 16GB 2x8 G.Skill Ripjaw @ 3200Mhz | Windows 10 Pro X64 | Samsung850 Pro 512GB SSD | LaunchBox/BigBox 7.0-10

THANKS!

 

Edited by cammelspit
  • Like 1
Link to comment
Share on other sites

@Jason Carr If I can ask a stupid question, being one of the plebs? When a game loads up images and metadata, IIRC you mentioned somewhere else that it has to scan through a good chunk of the database for each game it loads. Does this apply to just that one platform, now that the platform XML is split, or does this apply to the whole database? I ask because I am sure I am not the only one to have whole no-intro sets for GameBoy or NES but I am of a very few people who have more than 50K roms imported.  Maybe there is some superfluous looking up happening that can be toned down when a platform has fewer roms. It also seems that, as I scroll, everything that was made visible at all must be loaded before the game I am sitting on is loaded. Is there a way to stop the loading of all other roms images and metadata so that BB can catch up to what is selected easier? An example is how, at the end of my second video, how it showed the metadata of that advanced D&D game even though I had clearly moved to hover over different games. In a less crazy example, I let it sit for about 5 minutes and then out of nowhere, it suddenly caught up, loaded the metadata for the game I had selected and ALL of the other games previously that I had only scrolled by were already cached up fully. The system had less than a thousand rom images, unlike GBA or MAME which are, of course, the worst offenders due to there being an immense number of games.

 

Dude, thanks again for looking into this for me, I REALLY appreciate it. Honestly, I was kinda hoping for a clear win like what happened on the last stream but maybe this one will be a bit harder to optimize. :D

Keep up the great work my friend, Have a GREAT rest of your day!

Link to comment
Share on other sites

@Jason Carr After doing some testing with a clean install of Launchbox and using my data folder it seems the bottle neck is with the parsing of Platforms.xml file at startup. Wouldn't there be a performance gain for large data structured libraries such as mine (25000+ games and 60+ platforms) to use an ini system since it maybe faster to parse. 

Non edited stock Platforms.xml -  Launchbox startup time 4 seconds.

Edited  Platforms.xml - Launchbox startup time 1 minute 25 seconds

 

Thanks for all your hard work!

Platforms.xml

Edited by drtechnolust
Link to comment
Share on other sites

9 minutes ago, Jason Carr said:

Hi @drtechnolust, what do you mean by "editing the Platforms.xml file"? What changes did you make?

80 hour work week has me talking like a zombie lol. I was trying to say after all my systems\platforms were added. The platforms file increased the size and lines of code of the file from a 1kb (barebones file) to 467kb with 11767 lines of code. When the program is loaded it seems that some process is parsing through each line slowly in this file. Probably because of all the folders for the media is being checked?

Link to comment
Share on other sites

2 minutes ago, Jason Carr said:

Ah, I see, thanks @drtechnolust. More likely it's the games themselves that are delaying the startup process (that's at least how it should work). Or are you just changing the platforms file only and leaving your collection empty with no games?

@Jason CarrI renamed the "Platforms" folder to "Platforms - test" to rule out the games folder. So the Platforms folder is empty.

Edited by drtechnolust
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...