Bug 2323667

Summary: High CPU consumption on IBM Z: ceph CRC to be backported
Product: [Red Hat Storage] Red Hat Ceph Storage Reporter: Aliaksei Makarau (IBM) <amakarau>
Component: BuildAssignee: Justin Caratzas <jcaratza>
Status: CLOSED DUPLICATE QA Contact: Vivek Das <vdas>
Severity: high Docs Contact:
Priority: high    
Version: 8.0CC: amakarau, bkunal, cephqe-warriors, jcaratza, sliu1
Target Milestone: ---   
Target Release: 8.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2327263 2328629 (view as bug list) Environment:
Last Closed: 2025-03-27 01:46:00 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2327263, 2328629    

Description Aliaksei Makarau (IBM) 2024-11-04 13:33:32 UTC
Description of problem:

Ceph CRC is not optimized for IBM Z (s390x arch).
This fix solves high CPU consumption.
We speedup ceph by implementing CRC using IBM Z hardware features. 
The PR for ceph https://github.com/ceph/ceph/pull/56224 has to be backported.


fio -ioengine=libaio -direct=1 -name=test -group_reporting=1 -runtime=180 -time_based -iodepth=8 -bs=128K -rw=write -numjobs=8 -size=3G

ceph_crc32c_sctp:

Samples: 1M of event 'cycles:P', Event count (approx.): 2211775104000
Overhead  Command          Shared Object        Symbol
  19.58%  tp_osd_tp        ceph-osd             [.] ceph_crc32c_sctp
  18.78%  msgr-worker-1    ceph-osd             [.] ceph_crc32c_sctp
   5.88%  msgr-worker-1    [kernel.kallsyms]    [k] raw_copy_to_user_key
   3.48%  tp_osd_tp        libc.so.6            [.] memcpy
   3.04%  tp_osd_tp        libc.so.6            [.] _int_malloc
   2.20%  tp_osd_tp        [kernel.kallsyms]    [k] cpumsf_pmu_enable
   1.19%  tp_osd_tp        libc.so.6            [.] malloc
   1.13%  tp_osd_tp        libc.so.6            [.] malloc_consolidate

s390x HW crc32:

Samples: 874K of event 'cycles:P', Event count (approx.): 1138476612000
Overhead  Command          Shared Object         Symbol
   8.58%  msgr-worker-1    [kernel.kallsyms]     [k] raw_copy_to_user_key
   5.27%  tp_osd_tp        libc.so.6             [.] memcpy
   4.70%  tp_osd_tp        libc.so.6             [.] _int_malloc
   3.03%  tp_osd_tp        [kernel.kallsyms]     [k] cpumsf_pmu_enable
   1.97%  tp_osd_tp        ceph-osd              [.] crc32_le_vgfm_generic
   1.75%  tp_osd_tp        libc.so.6             [.] malloc_consolidate
   1.72%  tp_osd_tp        libc.so.6             [.] malloc
   1.64%  msgr-worker-1    ceph-osd              [.] crc32_le_vgfm_generic





Version-Release number of selected component (if applicable):
8.0
9.0

How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:
https://tracker.ceph.com/issues/64952
https://github.com/ceph/ceph/pull/56224

Comment 1 Storage PM bot 2024-11-04 13:33:44 UTC
Please specify the severity of this bug. Severity is defined here:
https://bugzilla.redhat.com/page.cgi?id=fields.html#bug_severity.