Skip to content

Conversation

dongjoon-hyun
Copy link
Member

@dongjoon-hyun dongjoon-hyun commented Oct 14, 2025

What changes were proposed in this pull request?

This PR aims to regenerate benchmark results after upgrading to Scala 2.13.17.

Why are the changes needed?

Since last update, we change important libraries, not only Scala, but also Hadoop, ORC, ZSTD libraries. This PR aims to make the benchmark result up-to-date as a way to detect any performance regression.

Does this PR introduce any user-facing change?

No.

How was this patch tested?

Manual review.

Was this patch authored or co-authored using generative AI tooling?

No.

-----------------------------------------------------------------------------------------------------------------------------
Compression 1024 array values in 1 threads 44 50 3 0.0 43112.9 1.0X
Compression 1024 array values single-threaded 32 33 0 0.0 31315.1 1.4X
Compression 1024 array values in 2 threads 23 25 1 0.0 22108.7 1.0X
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The number of thread seems to be changed by GitHub Action side.

def getNThreads: Int = {
var nThreads = Runtime.getRuntime.availableProcessors
val jmx = ManagementFactory.getOperatingSystemMXBean
if (jmx != null) {
val loadAverage = jmx.getSystemLoadAverage.toInt
if (nThreads > 1 && loadAverage >= 1) nThreads = Math.max(1, nThreads - loadAverage)
}
nThreads
}

Decompression 10000 times from level 3 with buffer pool 540 541 0 0.0 54016.9 1.1X
Decompression 10000 times from level 1 without buffer pool 166 167 0 0.1 16645.6 1.0X
Decompression 10000 times from level 2 without buffer pool 166 166 0 0.1 16558.6 1.0X
Decompression 10000 times from level 3 without buffer pool 166 167 0 0.1 16629.4 1.0X
Copy link
Member Author

@dongjoon-hyun dongjoon-hyun Oct 14, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The ZSTD decompression speed is improved in Java 17 benchmark. Since Java 21 doesn't show any change, it could be some transient result.

UTF-32 56295 56403 153 0.2 5629.5 1.0X
UTF-16 50644 50653 13 0.2 5064.4 1.1X
UTF-8 30599 30619 28 0.3 3059.9 1.8X
UTF-32 33517 33545 41 0.3 3351.7 1.0X
Copy link
Member Author

@dongjoon-hyun dongjoon-hyun Oct 14, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here, UTF-32 performance is improved, but Java 21 result is the same. This could be a transient one.

@dongjoon-hyun
Copy link
Member Author

Thank you, @LuciferYang and @yaooqinn .

@dongjoon-hyun
Copy link
Member Author

At the first glance, there is no outstanding regression .Let me merge this since this is only a result of regeneration.

@dongjoon-hyun dongjoon-hyun deleted the SPARK-53893 branch October 14, 2025 03:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants