add arrow-down arrow-left arrow-right arrow-up authorcheckmark clipboard combo comment delete discord dots drag-handle dropdown-arrow errorfacebook history inbox instagram issuelink lock markup-bbcode markup-html markup-pcpp markup-cyclingbuilder markup-plain-text markup-reddit menu pin radio-button save search settings share star-empty star-full star-half switch successtag twitch twitter user warningwattage weight youtube

Demand for Bottleneck detecting software?

SwiftSeb

7 months ago

Hello, I am in the process of developing a piece of software which will automatically detect hardware bottlenecks in your system, and then if a performance deficit has been exposed, a list of recommendations for suitable hardware upgrades.

As of yet the program can monitor the CPU, GPU and RAM and determine the bottleneck from those factors. The general gist of how the system works is by monitoring the utilisation of the hardware during a benchmark and using the benchmark score compared to a database of the individual results for each of the users hardware pieces, as to see if the part is working at full capacity or not. The bottleneck is determined from all these values. And then the new recommended parts are given from a database of stable hardware pairs.

My questions to you are:

Do you think there is a market of users who would use this.

Would you use this software?

Do you believe this could be useful for someone less experienced in hardware monitoring?

Thanks :)

Comments

  • 7 months ago
  • 1 point

I think that would be great dude! I would love to help test your software.

  • 7 months ago
  • 1 point

cheers dude, im still refining the gpu processes for windows, but the functionality is essentialy there. Glad to hear its not useless :)

  • 7 months ago
  • 1 point

I might use it, but it would save people from having to ask and read forums all the time. I think it would get used somewhat, although I don't know if you put a price on it if it would sell, unless you priced it low. Your target audience would have to be beginners into the PC world, so just keep that in mind when creating the UI. Veterans in PCs will not need this tool as much, as they know what they are looking at.

I would help test the software to debug. I have some programming knowledge too, so I might be of some help in that aspect, although I don't know of how much. What language are you using?

  • 7 months ago
  • 1 point

so the program is written in python, i have everything documented and written up on GitHub

  • 7 months ago
  • 1 point

Oh okay, I am most familiar with that language! I'lk have to look at it and see if I can help. Not program it, but help debug it. Would you be alright with that?

  • 7 months ago
  • 1 point

honestly thats great, i cant directly implement any of your code, but perhaps some cleverly worded advice on how to improve a certain area instead, this is due to the fact that it is my A level computer science coursework. so inherently this is supposed to be my own work, with advice from other :).

If you want to create a branch of the master branch, thats no problem.

If you are also going to go ahead with running the software, there are a few things you need beside the raw code. This includes:

The SQL database of components, (i can give you the tables) Heaven benchmark. Most of The pyqt5 plugins :)

  • 7 months ago
  • 1 point

I wasn't going to edit it like that(although I might just for my own experimentation), more test it and pinpoint what could need to be changed in the code itself. If you could give the tables for the code, that'd be great! I'll help where I can(hopefully), without encroaching too much since it is for Computer Science.

  • 7 months ago
  • 1 point

I don't want to rain on your parade too hard, but I suspect that there's a hidden assumption here that a rate limiting component will show as running maxed out, and that's not necessarily the case.

For instance, I've worked on systems where nothing seemed to be particularly busy but the application ran slow. The problem was traced to a slow transaction log disk, which was being written to synchronously in a single-threaded manner, which was holding up other execution threads. The CPU didn't read busy because the disk was holding things up, and the disk didn't read especially busy because each small write was interleaved with a burst of mutex synchronization in the CPU. You have to know the characteristics of the entire system to diagnose a problem like that one.

Another, related problem is that it's very hard to read memory busy-ness from any sort of hardware monitor.

A program like yours is far from useless, but it will take a certain amount of experience to interpret the results in all but the most obvious situations.

  • 7 months ago
  • 1 point

I really appreciate your criticism, i had thought about that prior to getting started, thats why I hope to implement a complimentary method of determining the bottleneck, of which grades each component from A-F and therefore the pairing of an A CPU and an D GPU might help the final output of the bottleneck.

this is only complimentary as i cant know that the D component is on sub zero cooling and is overclocked as to perform to that of a B level card, therefore this isnt the primary method.

[comment deleted]

Sort

add arrow-down arrow-left arrow-right arrow-up authorcheckmark clipboard combo comment delete discord dots drag-handle dropdown-arrow errorfacebook history inbox instagram issuelink lock markup-bbcode markup-html markup-pcpp markup-cyclingbuilder markup-plain-text markup-reddit menu pin radio-button save search settings share star-empty star-full star-half switch successtag twitch twitter user warningwattage weight youtube