Jump to content
LaunchBox Community Forums

Tex8503

Members
  • Posts

    12
  • Joined

  • Last visited

Tex8503's Achievements

8-Bit Processor

8-Bit Processor (3/7)

0

Reputation

  1. I think it depends on how much data you're working with, how your custom DB works, and how the updates work. For example, if you've got 10,000 records and record 9,000 needs to be updated, if you can touch record 9,000 without seeking through the 8,999 that come before it, and then when you write the data to 9,000 - depending on when you write this to disk, you need to also need to update that record in memory - so if you can do that without the OS restaging all 10,000 records. This likely gets more complicated depending on how many tables / how complex the data model is. This example assumes 1 table - but in a perfect world, the data is organized in such a way that you've got limited data (that might be indexed) that's the most common (maybe for things like the data in list view) - then other tables for expanded data, that you only pull when the individual game is queried when you select one. I've used SQLite before - but not with C# - but it's always been a pretty small footprint and performant... so I'm surprised the C# implementation isn't up to snuff, but i'll take your word for it! Again, as I said before, I don't know how the data is organized - so I'm just guessing, and def not trying to armchair quarterback - if anything, just trying to challenge assumptions. SQL Server Express / LocalDB or RavenDB might also be options if someone wanted to do a POC. I know this isn't the same, but I get PTSD from large memory databases because of a web app tied to a recipe system for a client I worked with.... the agency that build the app before us loaded the entire db into memory across multiple maps and then correlated this to flat data files to achieve a sort of 'categorization' of data without touching the MS SQL DB. This DB had 10,000+ records and the app took 5 min to start... and then was sluggish beyond what was expected. We actually found that by modifying the data in the DB and having the app call it directly actually improved performance because the memory paging took too long for what were small records - not to mention we cut the app start up time down to 5-10 secs. Btw - this was a .NET MVC 4 app.
  2. Makes sense. I think I might have done media requests or imports - so I'll keep an eye on it. As for not optimizing for memory usage, It makes sense to prioritize UI performance and load time, but in my experience, those things are often connected - IE if you load a lot into memory upfront, you're likely to increase that first load time, but decrease all subsequent load times when doing hits for the same info; however, it's a trade off because if you've got LOTS of data in memory, then depending on how it's indexed and stored, it could be more cumbersome to manipulate and lag the UI if you're pushing the whole dataset each time rather than just the diffs between states when editing the dataset when there are changes, which would impact impacting metrics like the speed of the UI. I'd imagine a true database could do a lot to improve this when you query for specific keys rather than doing iterations over datasets, but I also know a change like that is not trivial. Thank you for the conversation and humoring the ideas here.
  3. Appreciate the quick response! TBH - even the 1-2gb worth of memory usage seems high to me. Assuming it's loading all of the metadata and such into memory, maybe this is right, but even when filtering platforms or changing views between image or list, the memory usage doesn't change, which leads me to believe it's leaving everything in memory at all times, which seems like it could dramatically hurt folks with less memory. I'm just guessing without being able to look at the code and how its managing data - so I could be way off. One thing to note: this is happening for me in Launchbox, not Bigbox. I'd need to do some more checking on Launchbox on this system to confirm, but I'm trying to use Launchbox to get the dataset right. I am running windows 10 still, haven't made the jump to 11 for various reasons, but all other updates are applied and my drivers are up to date. I just poked at my data folder and it seems everything is stored in XML... ~100mb total worth in my case. Curious how the software is handling this... seems a stretch that ~100mb balloons to 1-2gb. Not trying to backseat develop, but would be interested in hearing about the technical challenges the dev team is facing here and would love to provide ideas.
  4. So - Let me start off by saying - I love launchbox and bigbox. They're great and pretty much do everything I want. I own a license. That being said, there's some serious performance problems that need to be addressed (and I say this as someone who helps write software). I'm running an emulation only box: Win 10 64bit build 19044 Intel Core i3-8121U 2.20 ghz (4 cores) 8gb of ram Radeon RX 540 1TB NVME drive It's an Intel Nuc Gen 8 and its been slaying pretty much everything pre-PS2. It has 14,288 games at the moment. Launchbox brings it to it's knees. About a minute after start up, it consumes ~2gb of ram. I left the system up for days with Launchbox running and this climbed to ~7gb basically consuming 99% of the system memory. It doesn't seem to matter if I'm in list view or images view... it eats resources all the same. It also doesn't seems to 'lazy load' things by not loading things that aren't on screen... I'm also wondering if it uses a database, ala sqlite - because ~14,000 records should not take ~2 gig of ram... On top of being 'slow' - there's also resource leaking issues it seems over time... Is there any word on performance improvements coming? Honestly, this is more important to me than any feature that could be added.
  5. @Jason Carr- so the DX9.0c installer doesn't work on Win10, but I ran the web DX installer and this fixed the issue! Thanks! I'll try it over RDP too - but i'm having success with teamviewer.
  6. Hm... I tried it over TeamViewer too and no dice. And it did work before ... and then... I'm not sure what happened, but I think I was using TeamViewer when it worked before... I'll try a directX 9.0c install again. Do the crashdumps help at all? I'm happy to upload them? Are there also any dependencies on optional pieces of windows? Internet Explorer? Windows Media Viewer?
  7. Hey folks - still dead from orbit here... I'm out of ideas and need help. @Jason Carr - any thoughts?
  8. A/V is off, unless win 10 has something I'm not aware of.
  9. So I re-downloaded the install file... uninstalled it, did a fresh re-install and it looks the same... The install file is about 204mb and the installed directory is about 218mb... Still doesn't work...
  10. Good to know! So - how do I force a clean, fresh install (beyond the obvious where you redownload the install file and install it)?
  11. Just a bit more information: I've gone ahead and tried uninstalling, re-installing launchbox multiple times. Tried deleting the directory. Tried installing it on another virtual drive (Windows 10 is running in a VM). Tried uninstalling .NET Framework 4.7 and re-installing it. I can see crashdumps in C:\Users\[username]\AppData\Local\CrashDumps It did work at one point earlier but then stopped working and I'm not quite sure why it's dying. I've attached a screenshot of the launchbox folder. I'm out of ideas... there's no error or anything; launchbox and bigbox just don't open. Also - they're not in the task manager.
  12. Hey folks, I've got a server I built and things were working ok. Launchbox was starting from the main c: - but I decided to move it to another drive. I moved the directory and it seemed to stop working. So I uninstalled it and re-installed it - that didn't help. I even tried deleting the folder- no dice. Note that I am RDPing into the box for setup (the server doesn't have a display connected to it) and I've also tried using teamviewer to connect to it - I can't seem to get either launchbox or bigbox to open now. Any ideas? Thanks!
×
×
  • Create New...