On Fri, 28 Mar 2025 23:48:34 GMT, Vladimir Ivanov <vaiva...@openjdk.org> wrote:

>> The HashMap for caching was deleted. Now it use only ThreadLocal variable 
>> without synchronization.
>> According to the specjvm2008::xml.transform workload the performance for low 
>> threads counts was not affected and improved for high threads counts. 
>> For the 2 socket server based on Xeon 6780E reported scores are (average for 
>> 3 runs):
>> 2x6780E | 1C | 32C | 64C | 96C | 128C | 160C | 192C | 224C | 256C | 288C
>> orig        | 138.9567 | 4127.567 | 8203.907 | 12252.07 | 15496.65 | 
>> 16222.91 | 15846.48 | 14758.43 | 14612.34 | 13969.25
>> patched | 139.7067 | 4118.763 | 8352.657 | 12491.14 | 16085.63 | 18101.67 | 
>> 21001.52 | 23847.33 | 26481.25 | 28273.93
>
> Vladimir Ivanov has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   8346230: [perf] scalability issue for the specjvm2008::xml.transform 
> workload

src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java
 line 112:

> 110:         reader = threadHasReader ? rw.reader : null;
> 111:         String factory = System.getProperty(property);
> 112:         if (threadHasReader &&

Please modify the comments to reflect your new behaviour.

src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java
 line 148:

> 146:         // for this thread, remove it.
> 147:         ReaderWrapper rw = m_readers.get();
> 148:         if (rw != null && rw.reader == reader && reader != null) {

Suggestion:

        if (rw != null && rw.reader == reader) {

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23185#discussion_r2039236336
PR Review Comment: https://git.openjdk.org/jdk/pull/23185#discussion_r2039246817

Reply via email to