Skip to content

[SPARK-53893][TESTS] Regenerate benchmark results after upgrading to Scala 2.13.17#52600

Closed
dongjoon-hyun wants to merge 1 commit intoapache:masterfrom
dongjoon-hyun:SPARK-53893
Closed

[SPARK-53893][TESTS] Regenerate benchmark results after upgrading to Scala 2.13.17#52600
dongjoon-hyun wants to merge 1 commit intoapache:masterfrom
dongjoon-hyun:SPARK-53893

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
huangxiaopingRD pushed a commit to huangxiaopingRD/spark that referenced this pull request Nov 25, 2025
…Scala 2.13.17

### 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.

- apache#52509
- apache#51127
- apache#52478
- apache#52591

### 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.

Closes apache#52600 from dongjoon-hyun/SPARK-53893.

Lead-authored-by: Dongjoon Hyun <[email protected]>
Co-authored-by: dongjoon-hyun <[email protected]>
Signed-off-by: Dongjoon Hyun <[email protected]>
dongjoon-hyun added a commit that referenced this pull request Feb 13, 2026
### What changes were proposed in this pull request?

This PR aims to regenerate benchmark results to check the intermediate status as a part of Apache Spark 4.2.0 preparation.

Please note that `V2FunctionBenchmark` is excluded because it's broken due to `NumericEvalContext.evalMode()` error currently. It's good to identify this kind of bug as early as possible via this PR.
- [SPARK-55519 `V2FunctionBenchmark` is broken](https://issues.apache.org/jira/browse/SPARK-55519)

### Why are the changes needed?

Apache Spark 4.2.0 introduced many improvements on top of the key dependency differences from Spark 4.1.0:
- #53396
- #53582
- #53347
- #54233
- #54292

We updated the benchmark result 4 months ago. So, it's time to make them up-to-date with our actual code and the current infra.
- #52600

```
- OpenJDK 64-Bit Server VM 17.0.16+8-LTS on Linux 6.11.0-1018-azure
+ OpenJDK 64-Bit Server VM 17.0.18+8-LTS on Linux 6.14.0-1017-azure
```

```
- OpenJDK 64-Bit Server VM 21.0.8+9-LTS on Linux 6.11.0-1018-azure
+ OpenJDK 64-Bit Server VM 21.0.10+7-LTS on Linux 6.14.0-1017-azure
```

### Does this PR introduce _any_ user-facing change?

No. This is a change on benchmark result files.

### How was this patch tested?

Manual review.

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

No.

Closes #54313 from dongjoon-hyun/SPARK-55520.

Lead-authored-by: Dongjoon Hyun <[email protected]>
Co-authored-by: dongjoon-hyun <[email protected]>
Signed-off-by: Dongjoon Hyun <[email protected]>
rpnkv pushed a commit to rpnkv/spark that referenced this pull request Feb 18, 2026
### What changes were proposed in this pull request?

This PR aims to regenerate benchmark results to check the intermediate status as a part of Apache Spark 4.2.0 preparation.

Please note that `V2FunctionBenchmark` is excluded because it's broken due to `NumericEvalContext.evalMode()` error currently. It's good to identify this kind of bug as early as possible via this PR.
- [SPARK-55519 `V2FunctionBenchmark` is broken](https://issues.apache.org/jira/browse/SPARK-55519)

### Why are the changes needed?

Apache Spark 4.2.0 introduced many improvements on top of the key dependency differences from Spark 4.1.0:
- apache#53396
- apache#53582
- apache#53347
- apache#54233
- apache#54292

We updated the benchmark result 4 months ago. So, it's time to make them up-to-date with our actual code and the current infra.
- apache#52600

```
- OpenJDK 64-Bit Server VM 17.0.16+8-LTS on Linux 6.11.0-1018-azure
+ OpenJDK 64-Bit Server VM 17.0.18+8-LTS on Linux 6.14.0-1017-azure
```

```
- OpenJDK 64-Bit Server VM 21.0.8+9-LTS on Linux 6.11.0-1018-azure
+ OpenJDK 64-Bit Server VM 21.0.10+7-LTS on Linux 6.14.0-1017-azure
```

### Does this PR introduce _any_ user-facing change?

No. This is a change on benchmark result files.

### How was this patch tested?

Manual review.

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

No.

Closes apache#54313 from dongjoon-hyun/SPARK-55520.

Lead-authored-by: Dongjoon Hyun <[email protected]>
Co-authored-by: dongjoon-hyun <[email protected]>
Signed-off-by: Dongjoon Hyun <[email protected]>
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