Strange NOR read/write throughput behaviour
Hi all,
can anybody help me explaining this diagram of NOR read throughput?
http://files.lamark.de/nor_read.png
As soon as a file, read from a StrataFlash containing only this file, exceeds erase block size (128KiB), file reading lasts a portion of time longer and read throughput stagnates...
Write throughput seems to be constant around erase block size:
http://files.lamark.de/nor_write.png
Best regards,
Bernhard
Quoted 12 lines · Bernhard Priewasser
Hi all,
can anybody help me explaining this diagram of NOR read throughput?
http://files.lamark.de/nor_read.png
As soon as a file, read from a StrataFlash containing only this file, exceeds erase block size (128KiB), file reading lasts a portion of time longer and read throughput stagnates...
Write throughput seems to be constant around erase block size:
Quoted 9 lines
http://files.lamark.de/nor_write.png
Best regards,
Bernhard______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Could you please explain the experiment a little more?
How are you measuring read and write throughput?
Which StrataFlash are you using? What board are you connecting the flash to? What kernel and MTD are you using?
Quoted 1 line
Could you please explain the experiment a little more?
Sure!
Quoted 1 line
How are you measuring read and write throughput?
C-Program, gettimeofday(). Very clean conditions: Empty flash, mount JFFS2, fopen one file. Measure duration of fwrite(filesize). Throughput = 1/duration.
Quoted 1 line
Which StrataFlash are you using?
E28F128J3, 128 Mbit. 128KiB erase block size.
Quoted 1 line
What board are you connecting the flash to?
Hynix HMS30C7202 evaluation board.
Quoted 1 line
What kernel and MTD are you using?
Kernel 2.6.11-hnx3
MTD/JFFS2 of kernel 2.6.11. (I know, I should try newest CVS...)
Signature · 1 line
Bernhard
Quoted 12 lines · Bernhard Priewasser
Quoted 1 line
Could you please explain the experiment a little more?
Sure!
Quoted 1 line
How are you measuring read and write throughput?
C-Program,
gettimeofday(). Very clean conditions: Empty flash, mount JFFS2, fopen one file. Measure duration of fwrite(filesize). Throughput = 1/duration.Quoted 1 line
Which StrataFlash are you using?
E28F128J3, 128 Mbit. 128KiB erase block size.
Quoted 1 line
What board are you connecting the flash to?
Quoted 9 lines
Hynix HMS30C7202 evaluation board.
Quoted 1 line
What kernel and MTD are you using?
Kernel 2.6.11-hnx3
MTD/JFFS2 of kernel 2.6.11. (I know, I should try newest CVS...)--
Bernhard
What about the read test.
Quoted 1 line
What about the read test.
As simple as you can imagine. Write a file (fopen, fwrite, fclose), wait some time, read the file (fopen, fread, fclose). Do you think there are caching mechanism responsible for it?
Signature · 1 line
Bernhard
Quoted 9 lines · Bernhard Priewasser
Quoted 1 line
What about the read test.
As simple as you can imagine. Write a file (fopen, fwrite, fclose), wait some time, read the file (fopen, fread, fclose).
Do you think there are caching mechanism responsible for it?--
Bernhard
Sorry for the long wait.
Yes, It sure looks like a caching effect. What is happening at 128KiBs? Let me ask around a little more. This is an arm7 processor, no L1 or L2 caches?
Quoted 1 line
Sorry for the long wait.
No problem.
Quoted 2 lines
Let me ask around a little more. This is an arm7 processor, no L1 or L2 caches?
ARM 720T, 8 KiB combined instruction/data cache. I don't know if there is any L2-Cache on Hynix HMS30C7202; but if there is one, I doubt it's as big as 128 KiB. It looks pretty much like there is a cache sized 128 KiB somewhere beetween fread() and the flash. But don't know where...
Signature · 1 line
Bernhard