RFR: 8310159: Bulk copy with Unsafe::arrayCopy is slower compared to memcpy

Steve Dohrmann duke at openjdk.org
Wed Nov 15 17:06:33 UTC 2023


On Wed, 15 Nov 2023 01:44:56 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> Thanks, there is an store fence upon completion of the main loop for the large size code:
>> 
>> ![image](https://github.com/openjdk/jdk/assets/3858882/3bcea3c6-3bda-458c-aa7c-29ed6010cde2)
>
> Do you see any concerns while handling multithreaded case where writer is busy copying 256 bytes block in loop and reader try to access a location still not flushed out of write combining buffer.

The results a concurrent reader sees could be different if the copy is using nt writes, but if the read of the destination is not synced with the copy operation, I think the reader would not see consistent state in either case.  Is it worse with nt writes?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/16575#discussion_r1394500454


More information about the hotspot-compiler-dev mailing list