4:00 is the entire cache line filled with data from ram because the system presumes you're gonna use it, OR because that is how the system functions, anyway? Something tells me that no matter if you mov a byte, two bytes, four or eight, the ENTIRE cache line will get filled with the appropriate memory locations' data, always.
I know I'm over a year late but yes the entire cache line is always moved into the cache, taking a byte from memory address 14 would grab the entire 0..63 range of memory. A cache line is the smallest unit of data memory management unit will operate on. This is why alignment is important as an integer living in the 62..66 memory region would require two cache lines to be fetched (0..63 and 64..127).
15:04 Span keypoint
4:00 is the entire cache line filled with data from ram because the system presumes you're gonna use it, OR because that is how the system functions, anyway? Something tells me that no matter if you mov a byte, two bytes, four or eight, the ENTIRE cache line will get filled with the appropriate memory locations' data, always.
I know I'm over a year late but yes the entire cache line is always moved into the cache, taking a byte from memory address 14 would grab the entire 0..63 range of memory. A cache line is the smallest unit of data memory management unit will operate on. This is why alignment is important as an integer living in the 62..66 memory region would require two cache lines to be fetched (0..63 and 64..127).
Microsoft does not really use .net themself.