Ways to make a benchmarking software (both CPU & GPU, taking multi-threading into account)?
I am an amateur overclocker mostly on CPU and am currently working on a project of making a benchmarking software using Wolfram Language.
My only experience of making an overclocking software is making a CPU stress test using C++ for my intro to C++ class (OpenMP kinda cheated me through)
I used Cinebench a lot as well as some 3D mark and for my understanding (please correct me if I am wrong),
CPU benchmarking is based on the amount of time to finish running a particular task, and GPU benchmarking is by running intense graphics software and based on the FPS, the user gets a score based on that.
With not fully understanding of benchmarking software (feel free to knowledge me how famous benchmarking software works)
Questions that I have for now are,
1. What're some good ways or famous calculations that can keep the CPU running? (I know calculating pi and finding prime numbers)
2. How should I take into account of multithreading? Should I do some concurrent processing? Or is parallel processing more preferable?
3. For GPU benchmarking, from what I've encountered, they all include some intense graphics software which I am not that familiar with of making. Are there any other ways of benchmarking besides comparing the FPS?
I am still in the planning phase of my project, any idea or thought (regardless of relating to Wolfram Language or not) are appreciated.