As we know, there are 2 Flash Cache modes in Exadata: WhiteThrough and WriteBack.
The WhiteThrough mode is obvious: the FC content is read from hard disk, so temporary content (temporary tables, sorts, hash join temporary data) cannot be written to FC in this mode.
In order to improve Write-performance for user processes we usually enable WriteBack mode the cells. In this mode FC is opened for writes from database level. And some time ago I asked the question in Oracle Community and community experts said that "FC will cache temporary content".
But real life have to have some doubts in expert statement.
Look at AWR report for our last test.
It is easy to distinct the temporary tablespace (BIG16K_TMP%) and other tablespaces by the name.
Look at the read and write time column (ms) and compare values:
You can see the big difference in read and write time for TEMP and not TEMP datafiles.
50-60-70 ms - it cannot be a flash latency, it is definitely a HDD latency.
Let look into the Express:
We clearly see the 0-1 ms latency for Flash and 10+ ms latency for HDD.
So, who is right? Is temporary content cached in Flash Cache or not ?
What we found:
Oracle divide the IO into 2 classes: Large IO and Small IO.
Large IOs are > 128K
Small IOs are <= 128K.
(Oracle Exadata Storage Server Software User's Guide, page 7-2:
small means less than or equal to 128 KB, and large means more than 128 KB).
So, now we understand :
Large IOs go to the HDD
Small IOs go to Flash Cache.