Skip to content

Commit 0e11bf9

Browse files
committed
locli: report DRep count in summary
1 parent 0ae6d5c commit 0e11bf9

File tree

2 files changed

+25
-13
lines changed

2 files changed

+25
-13
lines changed

bench/locli/src/Cardano/Analysis/API/Context.hs

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,17 @@
66
{-# LANGUAGE UndecidableInstances #-}
77
module Cardano.Analysis.API.Context (module Cardano.Analysis.API.Context) where
88

9-
import Cardano.Prelude
9+
import Cardano.Prelude
1010

11-
import Control.Monad (fail)
12-
13-
import Data.Aeson ( FromJSON (..), ToJSON (..), Value
14-
, withObject, object, (.:), (.:?), (.=), (.!=))
15-
import Data.Aeson.Key qualified as AE
16-
import Data.Aeson.KeyMap qualified as AE
17-
import Data.Aeson.Types qualified as AE
18-
import Data.Map.Strict qualified as Map
19-
import Data.Text qualified as T
20-
import Data.Time.Clock (UTCTime, NominalDiffTime)
11+
import Control.Monad (fail)
12+
import Data.Aeson (FromJSON (..), ToJSON (..), Value, object, withObject, (.!=), (.:),
13+
(.:?), (.=))
14+
import qualified Data.Aeson.Key as AE
15+
import qualified Data.Aeson.KeyMap as AE
16+
import qualified Data.Aeson.Types as AE
17+
import qualified Data.Map.Strict as Map
18+
import qualified Data.Text as T
19+
import Data.Time.Clock (NominalDiffTime, UTCTime)
2120

2221

2322
-- This is difficult: we have two different genesis-related structures:
@@ -28,8 +27,17 @@ data GenesisSpec
2827
= GenesisSpec
2928
{ delegators :: Word64
3029
, utxo :: Word64
30+
, dreps :: Word64
3131
}
32-
deriving (Eq, Generic, Show, ToJSON, FromJSON, NFData)
32+
deriving (Eq, Generic, Show, ToJSON, NFData)
33+
34+
-- support legacy profile content that does not specify DRep count
35+
instance FromJSON GenesisSpec where
36+
parseJSON = withObject "profile gensis" $ \o ->
37+
GenesisSpec
38+
<$> o .: "delegators"
39+
<*> o .: "utxo"
40+
<*> o .:? "dreps" .!= 0
3341

3442
-- | Partial 'Cardano.Ledger.Shelley.Genesis.ShelleyGenesis'
3543
data Genesis

bench/locli/src/Cardano/Analysis/API/Metrics.hs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ sumFieldsReport =
4343
, "ghc_version"
4444
] ++ (FieldName <$> manifestPackages) ++
4545
[ "era"
46-
, "delegators", "utxo"
46+
, "delegators", "utxo", "dreps"
4747
, "add_tx_size", "inputs_per_tx", "outputs_per_tx" , "tps", "tx_count"
4848
, "plutusScript"
4949
, "sumHosts", "sumLogObjectsTotal"
@@ -98,6 +98,10 @@ instance (KnownCDF f) => TimelineFields (Summary f) where
9898
"Starting UTxO set size"
9999
"Extra UTxO set size at the beginning of the benchmark"
100100

101+
<> fScalar "dreps" W12 Cnt (IWord64 $ dreps.sumGenesisSpec)
102+
"DRep count"
103+
"Amount of DReps in ledger, number of DRep delegations equals number of stake delegations"
104+
101105
<> fScalar "add_tx_size" W6 B (IWord64 $ add_tx_size.sumWorkload
102106
)
103107
"Extra tx payload"

0 commit comments

Comments
 (0)