Project

General

Profile

Actions

Feature #9997

closed

Specifying non volatile registers for increase performence in ppc64

Added by lbianc (Leonardo Bianconi) over 10 years ago. Updated over 10 years ago.

Status:
Closed
Target version:
[ruby-core:63437]

Description

To increase performance on ppc64 machines, the registers 14 and 15 were specified for the architecture, just like for x86_64 machines.

I've executed some benchmarks, see below:

bm_loop_for.rb
Before After
real 0m2.524s real 0m2.781s
user 0m2.520s user 0m2.777s
sys 0m0.004s sys 0m0.004s

bm_loop_whileloop.rb
Before After
real 0m1.142s real 0m1.267s
user 0m1.138s user 0m1.263s
sys 0m0.004s sys 0m0.004s

bm_so_array.rb
Before After
real 0m1.556s real 0m1.832s
user 0m1.552s user 0m1.828s
sys 0m0.004s sys 0m0.004s

bm_so_matrix.rb
Before After
real 0m1.070s real 0m1.107s
user 0m1.066s user 0m1.104s
sys 0m0.004s sys 0m0.004s


Files

enhac_ppc64.patch (781 Bytes) enhac_ppc64.patch lbianc (Leonardo Bianconi), 06/30/2014 03:44 PM
Ruby_ppc64_benchmark.pdf (53.6 KB) Ruby_ppc64_benchmark.pdf lbianc (Leonardo Bianconi), 07/08/2014 12:12 PM
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0