The ruby rpms
Find a file
Jarek Prokop aa9dd7be5f Enable parallel 'make check'.
Use a build condition to turn the parallelization on and off when
needed. The output is slightly different from the previous approach.
The way results are collected and displayed remains the same.

This allows us to scale down build time on multiple cores better.

Chose to introduce a bcond explicitly for tests for debugging purposes.
Running tests in parallel could hide issues that would show if
everything was done in a single test-unit process.
Limiting the number of cores available to RPM via a macro would also
hinder parallelization of the compilation, which might not be desired
in the case of only wanting to serializing the tests.

Table from the associated ticket:
The time represents total seconds that a full RPM build inside mock
took from start to finish.

PARALLEL TESTS
------------------------------------------------------------------------
Cores        |   Runs |    Avg (s) |    Min (s) |    Max (s) | Speedup
------------------------------------------------------------------------
2_core       |      5 |     3196.0 |     3175.0 |     3218.0 |   1.00x
4_core       |      5 |     3166.6 |     2949.0 |     3598.0 |   1.01x
8_core       |      5 |     1129.2 |     1090.0 |     1257.0 |   2.83x
16_core      |      5 |      807.4 |      794.0 |      820.0 |   3.96x

SEQUENTIAL TESTS
------------------------------------------------------------------------
Cores        |   Runs |    Avg (s) |    Min (s) |    Max (s) | Speedup
------------------------------------------------------------------------
2_core       |      5 |     3749.6 |     3728.0 |     3772.0 |   1.00x
4_core       |      5 |     3368.8 |     3128.0 |     3539.0 |   1.11x
8_core       |      5 |     1810.6 |     1764.0 |     1912.0 |   2.07x
16_core      |      5 |     1612.8 |     1571.0 |     1646.0 |   2.32x

PARALLEL vs SEQUENTIAL COMPARISON
-------------------------------------------------------------------------
Cores        |  Sequential Avg |    Parallel Avg |   Difference
-------------------------------------------------------------------------
2_core       |       3749.6 s |         3196.0 s |      +17.3%
4_core       |       3368.8 s |         3166.6 s |       +6.4%
8_core       |       1810.6 s |         1129.2 s |      +60.3%
16_core      |       1612.8 s |          807.4 s |      +99.8%

Resolves: rhbz#2401230
2025-10-15 15:38:03 +02:00
.fmf Adding fmf plan 2024-08-01 18:31:30 +00:00
plans Adding fmf plan 2024-08-01 18:31:30 +00:00
.gitignore Adding fmf plan 2024-08-01 18:31:30 +00:00
libruby.stp Add TapSet for Ruby. 2013-02-22 14:17:04 +01:00
macros.ruby Add %{ruby_default_filter} macro. 2013-04-30 14:42:13 +02:00
macros.rubygems Extract %gem_version and %gem_prerelease for independent use 2025-01-07 09:59:06 +01:00
operating_system.rb Upgrade to Ruby 3.3.0. 2024-01-02 18:52:33 +01:00
rpm_test_helper.rb Test RPM dependency generators for rubygems. 2024-08-22 13:06:15 +00:00
ruby-2.1.0-always-use-i386.patch Upgrade to Ruby 3.4.5. 2025-08-18 17:23:34 +02:00
ruby-2.1.0-custom-rubygems-location.patch Upgrade to Ruby 3.4.5. 2025-08-18 17:23:34 +02:00
ruby-2.1.0-Enable-configuration-of-archlibdir.patch Upgrade to Ruby 3.4.5. 2025-08-18 17:23:34 +02:00
ruby-2.1.0-Prevent-duplicated-paths-when-empty-version-string-i.patch Upgrade to Ruby 3.4.5. 2025-08-18 17:23:34 +02:00
ruby-2.3.0-ruby_version.patch Upgrade to Ruby 3.4.5. 2025-08-18 17:23:34 +02:00
ruby-2.7.0-Initialize-ABRT-hook.patch Upgrade to Ruby 3.4.1. 2025-01-07 12:43:03 +01:00
ruby-3.3.0-Disable-syntax-suggest-test-case.patch Upgrade to Ruby 3.4.5. 2025-08-18 17:23:34 +02:00
ruby-3.4.2-openssl-Fix-SHA-1-PSS-tests.patch Upgrade to ruby 3.4.4. 2025-06-13 12:41:51 +02:00
ruby-exercise.stp Add missing ruby-exercise.stp file. 2013-02-22 14:17:53 +01:00
ruby.rpmlintrc Upgrade to Ruby 3.4.1. 2025-01-07 12:43:03 +01:00
ruby.spec Enable parallel 'make check'. 2025-10-15 15:38:03 +02:00
rubygems.attr Add conflicts RPM generator. 2018-02-13 13:50:15 +01:00
rubygems.con Fix typo 2024-08-22 13:21:17 +02:00
rubygems.prov Upgrade to Ruby 2.6.0. 2019-01-17 08:31:01 +01:00
rubygems.req Fix typo 2024-08-22 13:21:17 +02:00
rubygems_plugin.rb Fix gem install to generate documentation 2025-01-07 12:43:07 +01:00
sources Upgrade to Ruby 3.4.5. 2025-08-18 17:23:34 +02:00
test_abrt.rb Move the ABRT hook test into separate file. 2015-12-13 19:36:58 +01:00
test_openssl_fips.rb Fix OpenSSL.fips_mode and OpenSSL::PKey.read in OpenSSL 3 FIPS. 2023-09-22 12:54:53 +02:00
test_rubygems_con.rb Test RPM dependency generators for rubygems. 2024-08-22 13:06:15 +00:00
test_rubygems_prov.rb Test RPM dependency generators for rubygems. 2024-08-22 13:06:15 +00:00
test_rubygems_req.rb Test RPM dependency generators for rubygems. 2024-08-22 13:06:15 +00:00
test_systemtap.rb Upgrade to Ruby 2.4.0. 2017-01-09 15:58:21 +01:00