Project

General

Profile

Bug #38485

PG Calculations Issue

Added by Krishna Venkata about 5 years ago. Updated over 4 years ago.

Status:
New
Priority:
Normal
Assignee:
-
% Done:

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
2 - major
Reviewed:
Affected Versions:
ceph-qa-suite:
upgrade/mimic-p2p
Crash signature (v1):
Crash signature (v2):

Description

I am having issues in the way PGs are calculated in https://ceph.com/pgcalc/ [Ceph PGs per Pool Calculator ] and the formulae mentioned in the site.
Below are my findings
The formula to calculate PGs as mentioned in the https://ceph.com/pgcalc/ :
1. Need to pick the highest value from either of the formulas
(( Target PGs per OSD ) x ( OSD # ) x ( Data ))/(size)
Or
( OSD# ) / ( Size )
2. The output value is then rounded to the nearest power of 2
3. If the nearest power of 2 is more than 25
below the original value, the next higher power of 2 is used.

Based on the above procedure, we calculated PGs for 25, 32 and 64 OSDs
Our Dataset:
%Data: 0.10
Target PGs per OSD: 100
OSDs 25, 32 and 64

For 25 OSDs

(100*25* (0.10/100))/(3) = 0.833

( 25 ) / ( 3 ) = 8.33

1. Raw pg num 8.33 ( Since we need to pick the highest of (0.833, 8.33))
2. max pg 16 ( For, 8.33 the nearest power of 2 is 16)
3. 16 > 2.08 ( 25 % of 8.33 is 2.08 which is more than 25% the power of 2)

So 16 PGs
 GUI Calculator gives the same value and matches with Formula.

For 32 OSD

(100*32*(0.10/100))/3 = 1.066
( 32 ) / ( 3 ) = 10.66

1. Raw pg num 10.66 ( Since we need to pick the highest of (1.066, 10.66))
2. max pg 16 ( For, 10.66 the nearest power of 2 is 16)
3. 16 > 2.655 ( 25 % of 10.66 is 2.655 which is more than 25% the power of 2)

So 16 PGs
  • GUI Calculator gives different value (32 PGs) which doesn’t match with Formula.

For 64 OSD

(100 * 64 * (0.10/100))/3 = 2.133
( 64 ) / ( 3 ) 21.33

1. Raw pg num 21.33 ( Since we need to pick the highest of (2.133, 21.33))
2. max pg 32 ( For, 21.33 the nearest power of 2 is 32)
3. 32 > 5.3325 ( 25 % of 21.33 is 5.3325 which is more than 25% the power of 2)

So 32 PGs
  • GUI Calculator gives different value (64 PGs) which doesn’t match with Formula.

We checked the PG calculator logic from [ https://ceph.com/pgcalc_assets/pgcalc.js ] which is not matching from above formulae.

Can someone Guide/reference us to correct formulae to calculate PGs.

History

#1 Updated by Greg Farnum about 5 years ago

  • Project changed from Ceph to ceph-website

#2 Updated by David Galloway over 4 years ago

  • Project changed from ceph-website to www.ceph.com

#3 Updated by Sage Weil over 4 years ago

  • Project changed from www.ceph.com to website

Also available in: Atom PDF