Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5,346 changes: 3,808 additions & 1,538 deletions bench/cardano-profile/data/all-profiles-coay.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,7 @@
"tracing_backend": "trace-dispatcher",
"tracer": false,
"utxo_lmdb": false,
"utxo_lsmt": false,
"verbatim": {
"EnableP2P": true
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,7 @@
"tracing_backend": "trace-dispatcher",
"tracer": false,
"utxo_lmdb": false,
"utxo_lsmt": false,
"verbatim": {
"EnableP2P": true
}
Expand Down
1 change: 1 addition & 0 deletions bench/cardano-profile/data/test/ci-test-bage.json
Original file line number Diff line number Diff line change
Expand Up @@ -373,6 +373,7 @@
"tracer": true,
"tracing_backend": "trace-dispatcher",
"utxo_lmdb": false,
"utxo_lsmt": false,
"verbatim": {
"EnableP2P": true
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,7 @@
"tracing_backend": "trace-dispatcher",
"tracer": true,
"utxo_lmdb": false,
"utxo_lsmt": false,
"verbatim": {
"EnableP2P": true
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,7 @@
"tracing_backend": "trace-dispatcher",
"tracer": true,
"utxo_lmdb": false,
"utxo_lsmt": false,
"verbatim": {
"EnableP2P": true
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,7 @@
"tracing_backend": "trace-dispatcher",
"tracer": true,
"utxo_lmdb": false,
"utxo_lsmt": false,
"verbatim": {
"EnableP2P": true
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -481,6 +481,7 @@
"tracing_backend": "trace-dispatcher",
"tracer": true,
"utxo_lmdb": false,
"utxo_lsmt": false,
"verbatim": {
"EnableP2P": true
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -142,15 +142,15 @@ profilesNoEraCloud =
blockMem15x = P.budgetBlockMemoryOneAndAHalf . P.overlay Pl.calibrateLoopBlockMemx15
blockMem2x = P.budgetBlockMemoryDouble . P.overlay Pl.calibrateLoopBlockMemx2
-- LMDB helper. Node config add the "hostvolume"s as a cluster constraint.
lmdb = P.lmdb
-- The name of the defined volume in the Nomad Client config and
-- where to mount it inside the isolated chroot.
-- If the volume is not present the deployment will fail!
. P.appendNomadHostVolume (Types.ByNodeType {
Types.producer = [Types.HostVolume "/ephemeral" False "ephemeral"]
, Types.explorer = Nothing
})
. P.ssdDirectory "/ephemeral"
ephemeral =
-- The name of the defined volume in the Nomad Client config and
-- where to mount it inside the isolated chroot.
-- If the volume is not present the deployment will fail!
P.appendNomadHostVolume (Types.ByNodeType {
Types.producer = [Types.HostVolume "/ephemeral" False "ephemeral"]
, Types.explorer = Nothing
})
. P.ssdDirectory "/ephemeral"
-- Helper adding workload that takes periodic snapshots of cgroup's `memory.stat`.
cgmem = -- Require the cgroup fs mounted by default.
P.appendNomadHostVolume (Types.ByNodeType {
Expand All @@ -168,9 +168,10 @@ profilesNoEraCloud =
-- Value (post-Voltaire profiles)
, valueVolt & P.name "value-volt-nomadperf" . P.dreps 10000 . P.newTracing
, valueVolt & P.name "value-volt-rtsqg1-nomadperf" . P.dreps 10000 . P.newTracing . P.rtsGcParallel . P.rtsGcLoadBalance
, valueVolt & P.name "value-volt-lmdb-nomadperf" . P.dreps 10000 . P.newTracing . lmdb
, valueVolt & P.name "value-volt-lmdb-nomadperf" . P.dreps 10000 . P.newTracing . ephemeral . P.lmdb
, valueVolt & P.name "value-volt-lsmt-nomadperf" . P.dreps 10000 . P.newTracing . ephemeral . P.lsmt
, valueVolt & P.name "value-volt-cgmem-nomadperf" . P.dreps 10000 . P.newTracing . cgmem
, valueVolt & P.name "value-volt-lmdb-cgmem-nomadperf" . P.dreps 10000 . P.newTracing . lmdb . cgmem
, valueVolt & P.name "value-volt-lmdb-cgmem-nomadperf" . P.dreps 10000 . P.newTracing . ephemeral . P.lmdb . cgmem
-- Plutus (pre-Voltaire profiles)
, loop & P.name "plutus-nomadperf" . P.dreps 0 . P.newTracing
, loop & P.name "plutus-drep1k-nomadperf" . P.dreps 1000 . P.newTracing
Expand All @@ -185,7 +186,8 @@ profilesNoEraCloud =
, loopVolt & P.name "plutus-volt-memx15-nomadperf" . P.dreps 10000 . P.newTracing . blockMem15x
, loopVolt & P.name "plutus-volt-memx2-nomadperf" . P.dreps 10000 . P.newTracing . blockMem2x
, loopVolt & P.name "plutus-volt-rtsqg1-nomadperf" . P.dreps 10000 . P.newTracing . P.rtsGcParallel . P.rtsGcLoadBalance
, loopVolt & P.name "plutus-volt-lmdb-nomadperf" . P.dreps 10000 . P.newTracing . lmdb
, loopVolt & P.name "plutus-volt-lmdb-nomadperf" . P.dreps 10000 . P.newTracing . ephemeral . P.lmdb
, loopVolt & P.name "plutus-volt-lsmt-nomadperf" . P.dreps 10000 . P.newTracing . ephemeral . P.lsmt
-- TODO: scaling the BLST workload only works well for 4 txns/block instead of 8. However, comparing it to other steps-constrained workloads, requires 8txns/block (like all of those).
, blst & P.name "plutusv3-blst-nomadperf" . P.dreps 10000 . P.newTracing
, blst & P.name "plutusv3-blst-stepx15-nomadperf" . P.dreps 10000 . P.newTracing . P.budgetBlockStepsOneAndAHalf
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ profilesNoEraMiniature =
-- 2 nodes, local
ciBench02Value & P.name "ci-bench" . V.valueLocal . P.dreps 0 . P.traceForwardingOn . P.newTracing
, ciBench02Value & P.name "ci-bench-lmdb" . V.valueLocal . P.dreps 0 . P.traceForwardingOn . P.newTracing . P.lmdb . P.ssdDirectory "/tmp"
, ciBench02Value & P.name "ci-bench-lsmt" . V.valueLocal . P.dreps 0 . P.traceForwardingOn . P.newTracing . P.lsmt . P.ssdDirectory "/tmp"
, ciBench02Value & P.name "ci-bench-rtview" . V.valueLocal . P.dreps 0 . P.traceForwardingOn . P.newTracing . P.tracerRtview
, ciBench02Value & P.name "ci-bench-notracer" . V.valueLocal . P.dreps 0 . P.traceForwardingOff . P.newTracing
, ciBench02Value & P.name "ci-bench-drep" . V.valueLocal . P.dreps 10 . P.traceForwardingOn . P.newTracing
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ module Cardano.Benchmarking.Profile.Primitives (
, chaindb

-- Node
-- LMDB True or False.
, lmdb
-- LMDB or LSMT True or False.
, lmdb, lsmt
-- Node's tracer flag.
, traceForwardingOn, traceForwardingOff
-- Node's tracer type.
Expand Down Expand Up @@ -177,6 +177,7 @@ empty = Types.Profile {
, Types.chaindb = Nothing
, Types.node = Types.Node {
Types.utxo_lmdb = False
, Types.utxo_lsmt = False
, Types.ssd_directory = Nothing
, Types.verbatim = Types.NodeVerbatim (Just True) -- EnableP2P = true enforced; Node 10.6 won't support non-p2p topologies.
, Types.trace_forwarding = False
Expand Down Expand Up @@ -592,6 +593,9 @@ node f p = p {Types.node = f (Types.node p)}
lmdb :: Types.Profile -> Types.Profile
lmdb = node (\n -> n {Types.utxo_lmdb = True})

lsmt :: Types.Profile -> Types.Profile
lsmt = node (\n -> n {Types.utxo_lsmt = True})

ssdDirectory :: String -> Types.Profile -> Types.Profile
ssdDirectory str = node (\n -> n {Types.ssd_directory = Just str})

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -392,6 +392,7 @@ instance Aeson.FromJSON Chunks where
data Node = Node
{
utxo_lmdb :: Bool
, utxo_lsmt :: Bool
, ssd_directory :: Maybe String

, verbatim :: NodeVerbatim
Expand All @@ -414,6 +415,7 @@ instance Aeson.ToJSON Node where
toJSON n =
Aeson.object
[ "utxo_lmdb" Aeson..= utxo_lmdb n
, "utxo_lsmt" Aeson..= utxo_lsmt n
, "ssd_directory" Aeson..= ssd_directory n
, "verbatim" Aeson..= verbatim n
-- TODO: Rename in workbench/bash to "trace_forwarding".
Expand All @@ -430,6 +432,7 @@ instance Aeson.FromJSON Node where
Aeson.withObject "Node" $ \o -> do
Node
<$> o Aeson..: "utxo_lmdb"
<*> o Aeson..: "utxo_lsmt"
<*> o Aeson..:? "ssd_directory"
<*> o Aeson..: "verbatim"
-- TODO: Rename in workbench/bash to "trace_forwarding".
Expand Down
1 change: 1 addition & 0 deletions bench/cardano-profile/test/Main.hs
Original file line number Diff line number Diff line change
Expand Up @@ -345,6 +345,7 @@ ciTestBage = Types.Profile {
, Types.scenario = Types.FixedLoaded
, Types.node = Types.Node {
Types.utxo_lmdb = False
, Types.utxo_lsmt = False
, Types.ssd_directory = Nothing
, Types.verbatim = Types.NodeVerbatim (Just True) -- EnableP2P = true enforced; Node 10.6 won't support non-p2p topologies.
, Types.trace_forwarding = True
Expand Down
2 changes: 1 addition & 1 deletion bench/plutus-scripts-bench/plutus-scripts-bench.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ library
-- IOG dependencies
--------------------------
build-depends:
, cardano-api ^>=10.19
, cardano-api ^>=10.19.1
, plutus-ledger-api ^>=1.53
, plutus-tx ^>=1.53
, plutus-tx-plugin ^>=1.53
Expand Down
2 changes: 1 addition & 1 deletion bench/tx-generator/tx-generator.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ library
, attoparsec-aeson
, base16-bytestring
, bytestring
, cardano-api ^>= 10.19
, cardano-api ^>= 10.19.1
, cardano-binary
, cardano-cli ^>= 10.13
, cardano-crypto-class
Expand Down
82 changes: 73 additions & 9 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ repository cardano-haskell-packages
-- See CONTRIBUTING for information about these, including some Nix commands
-- you need to run if you change them
index-state:
, hackage.haskell.org 2025-10-17T00:26:22Z
, hackage.haskell.org 2025-12-03T15:53:31Z
, cardano-haskell-packages 2025-11-20T19:55:27Z

packages:
Expand Down Expand Up @@ -54,21 +54,85 @@ package snap-server
package bitvec
flags: -simd

if impl(ghc < 9.6.7)
allow-older:
blockio:unix

-- required for haddocks to build successfully
package plutus-scripts-bench
haddock-options: "--optghc=-fplugin-opt PlutusTx.Plugin:defer-errors"

allow-newer:
, katip:Win32

if impl (ghc >= 9.12)
allow-newer:
-- https://github.com/kapralVV/Unique/issues/11
, Unique:hashable

-- https://github.com/Gabriella439/Haskell-Pipes-Safe-Library/pull/70
, pipes-safe:base

-- IMPORTANT
-- Do NOT add more source-repository-package stanzas here unless they are strictly
-- temporary! Please read the section in CONTRIBUTING about updating dependencies.
source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-cli
tag: 053e8b90fe29e1d0ce7732d2cfbc12d02e80bd00
--sha256: sha256-Ygpdvwyw5jkeF5sdJqDY7XHaOFmaLbkiO48cGGfjRlI=
subdir:
cardano-cli

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-api
tag: 2b943d72569fcb8cab1a2f4aba6760f971fd5255
--sha256: sha256-PSexxXW5Oj+KGu4S6IIcGL9jdGQLtDNKNdtFiHN8Ff8=
subdir:
cardano-api

source-repository-package
type: git
location: https://github.com/IntersectMBO/ouroboros-consensus
tag: 8e3b611cd33dfc6b432e01f9c638358a39b9d1c5
--sha256: sha256-ET4bu3xlYI6lxL7YZdGKOzdet2F6+som1BxsO76cHnY=
subdir:
ouroboros-consensus
ouroboros-consensus-cardano
ouroboros-consensus-diffusion
ouroboros-consensus-protocol
sop-extras
strict-sop-core

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-ledger
tag: fb09078fa55015c881303a2ddb609c024cec258f
--sha256: sha256-9Y9CRiyMn0AWD+C4aNVMaJgrj3FDAYfCX4VrLvtoMaI=
subdir:
eras/allegra/impl
eras/alonzo/impl
eras/alonzo/test-suite
eras/babbage/impl
eras/conway/impl
eras/dijkstra/impl
eras/mary/impl
eras/shelley/impl
eras/shelley/test-suite
eras/shelley-ma/test-suite
libs/cardano-ledger-api
libs/cardano-ledger-core
libs/cardano-ledger-binary
libs/cardano-protocol-tpraos
libs/non-integral
libs/small-steps
libs/cardano-data
libs/set-algebra
libs/vector-map
eras/byron/chain/executable-spec
eras/byron/ledger/executable-spec
eras/byron/ledger/impl
eras/byron/crypto

-- Backported version of https://github.com/IntersectMBO/ouroboros-network/pull/5161
source-repository-package
type: git
location: https://github.com/IntersectMBO/ouroboros-network
tag: dfcb1f9c578ec8cd5114fea9696e7be6c9001323
--sha256: sha256-omXPdi/T/f3gq9rOH20zX+x3WvaxlB704g07RF/13Nk=
subdir:
ouroboros-network-api
ouroboros-network
2 changes: 1 addition & 1 deletion cardano-node-chairman/cardano-node-chairman.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ executable cardano-node-chairman
build-depends: cardano-api
, cardano-crypto-class
, cardano-git-rev ^>= 0.2.2
, cardano-ledger-core ^>= 1.18
, cardano-ledger-core ^>= 1.19
, cardano-node ^>= 10.6
, cardano-prelude
, containers
Expand Down
4 changes: 2 additions & 2 deletions cardano-node/cardano-node.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ library
, async
, base16-bytestring
, bytestring
, cardano-api ^>= 10.19
, cardano-api ^>= 10.19.1
, cardano-crypto-class ^>=2.2.3.2
, cardano-crypto-wrapper
, cardano-git-rev ^>=0.2.2
Expand Down Expand Up @@ -188,7 +188,7 @@ library
, network-mux >= 0.8
, nothunks
, optparse-applicative-fork >= 0.18.1
, ouroboros-consensus ^>= 0.28
, ouroboros-consensus:{ouroboros-consensus, ouroboros-consensus-lmdb, ouroboros-consensus-lsm} ^>= 0.28
, ouroboros-consensus-cardano ^>= 0.26
, ouroboros-consensus-diffusion ^>= 0.24
, ouroboros-consensus-protocol
Expand Down
Loading