Measure ram speed for application/ current speed utilization

0

Is there a way to measure the current ram speed? I have an application which needs a lot of ram and I'm tuning performance and it looks like I have hit the limit of ram speed, but I have to measure it somehow.

Can this be done somehow? If not per process then even current transfer rate between CPU and RAM would be also good for me.

Jan

Posted 2017-06-23T13:11:23.297

Reputation: 161

1"Is there a way to measure the current ram speed?" - Use a program like CPU-Z. Worth pointing out that unless you are talking about 2x and 3x performance increases, memory running at a lower frequency, most memory is going to pretty much perform very similar. – Ramhound – 2017-06-23T13:43:30.863

1.... not forgetting L1/L2/L3 caches, their size, how they are filled, and if/how they are shared between the cores. – xenoid – 2017-06-23T14:04:23.617

1

In my years, I've only ever come across one application that could be noticeably optimized by faster ram: Dwarf Fortress. Otherwise, ram speed is more pertinent to optimizing a system in relation to its core count, cache sizes, system bus speed, IO bus speed, etc. http://www.bay12games.com/dwarves/

– Frank Thomas – 2017-06-23T14:09:19.783

I know the theoretical speed, I want to know its utilization. Lets say in normal operation your system is transferring data to and from ram at 5Mb/sec ( I'm making this numbers up ) and when you start doing something intensive that uses a lot of data( that need to be read and written to RAM not only to CPU cache ) then this number goes to say 40Gb/s and this is what I want to measure, is there a way? – Jan – 2017-06-23T14:41:18.530

No, measuring utilized bandwidth on the system bus is probably fruitless. First understand that it will be "bursty" and "twitchy" as each LDA instruction in a thread will be scheduled by the OS (at the thread level), reordered and pipelined to free Execution Units at the instruction level, context switched in and out of the core its executing on, cached, cached loaded to registers literally a thousand times per second. the data unless aggregated would be largely useless, and there is no effective optimization decisions you can make in your code, except on the assembly level. – Frank Thomas – 2017-06-23T15:36:03.223

@FrankThomas ok thanks. Could you please add this as answer so I can accept it? – Jan – 2017-06-23T19:51:00.920

No answers