NDraskovic
NDraskovic

Reputation: 706

Getting hardware requirements for my application

Is there a way for me to get the amount of memory and processor power needed for my application. I recently had a very unpleasant experience when one of my applications kept freezing the computers on which it was working. This is obviously related to the lack of hardware power, because it works perfectly on the stronger computers that I used for testing purposes, where the application worked perfectly. So my question is - is there a way to calculate the amount of hardware power needed to run the application smoothly? Almost all of my applications are done in C#, so I would need a method that can work with that type of application. Thanks

Upvotes: 0

Views: 699

Answers (3)

TomTom
TomTom

Reputation: 62093

This is obviously related to the lack of hardware power, because it works perfectly on the stronger computers that I used for testing purposes,

Whoever set up testing should be fired.

You have to have one set of computers that are similar to the ones the application will run in for testing. That was accepted practice 20 years ago - seems modern times do not care about that.

Seriously, you NEED to have a test set that is representative on your lowest accepted hardware level.

Otherwise - no, sorry, no magic button. Profilers do NOT necessarily help (debugging, profiler may use more memory). Try a profiler. Optimize code. But at the end... you need to have a decent testbed.

Upvotes: 1

Matías Fidemraizer
Matías Fidemraizer

Reputation: 64933

I'd argue that this should be checked during software installation. Later, if user was prompted for updating his/her hardware and dismissed the warning, you shouldn't care about that.

If you're using Windows Installer (MSI), you can play with a custom action and use System.Management classes to detect whatever you want.

Upvotes: 0

Filip Ekberg
Filip Ekberg

Reputation: 36287

This is obviously related to the lack of hardware power

This entirely depends on what your application is doing. If you are solving problems in a "not so time efficient way", then you can optimize the code.

I would suggest that you analyze your code with a profiler.

This will tell you:

  • What parts of your code are taking up most RAM/CPU
  • How much RAM in total did your application need when it peeked
  • Information about CPU consumption

Upvotes: 5

Related Questions