How to determine the baseline for various operations based on hardware specs?
I have an embedded linux device and I would like to know the baseline for various operations on the device for e.g. memory read , memory write, movinand read and write etc. Is there a way to find the baseline speeds for these operations on the device 开发者_StackOverflow?
Read the datasheets for the various devices and do some math.
For example, if you have 32 bit SDRAM running at 50MHz, with CAS latencies of 4-1-1-1, and you can burst, then you know it will take 7 clocks to transfer 4 words (16 bytes). There will probably be an idle period of 1 clock also, so it's really 8 clocks for the 16 bytes, or 2 bytes for every clock, which at 50MHz is 100MB/s. Now, you should really subtract the time it spends refreshing the memory, etc.
There's really no way to know what the performance should be without reading specs and doing the math.
精彩评论