pub struct Benchmark<Env: Environment> { /* private fields */ }Implementations§
Source§impl<Env: Environment> Benchmark<Env>
impl<Env: Environment> Benchmark<Env>
Sourcepub async fn run_benchmark<C: ClientContext<Environment = Env> + 'static>(
bps: usize,
chain_clients: Vec<ChainClient<Env>>,
generators: Vec<Box<dyn OperationGenerator>>,
transactions_per_block: usize,
health_check_endpoints: Option<String>,
runtime_in_seconds: Option<u64>,
delay_between_chains_ms: Option<u64>,
chain_listener: ChainListener<C>,
command_sender: UnboundedSender<ListenerCommand>,
shutdown_notifier: &CancellationToken,
) -> Result<(), BenchmarkError>
pub async fn run_benchmark<C: ClientContext<Environment = Env> + 'static>( bps: usize, chain_clients: Vec<ChainClient<Env>>, generators: Vec<Box<dyn OperationGenerator>>, transactions_per_block: usize, health_check_endpoints: Option<String>, runtime_in_seconds: Option<u64>, delay_between_chains_ms: Option<u64>, chain_listener: ChainListener<C>, command_sender: UnboundedSender<ListenerCommand>, shutdown_notifier: &CancellationToken, ) -> Result<(), BenchmarkError>
Runs a benchmark with the given chain clients and operation generators.
Each chain client is paired with an operation generator (one per chain). The generators produce the operations to include in each block.
Sourcepub async fn close_benchmark_chain(
chain_client: &ChainClient<Env>,
) -> Result<(), BenchmarkError>
pub async fn close_benchmark_chain( chain_client: &ChainClient<Env>, ) -> Result<(), BenchmarkError>
Closes the chain that was created for the benchmark.
pub fn get_all_chains( chains_config_path: Option<&Path>, benchmark_chains: &[(ChainId, AccountOwner)], ) -> Result<Vec<ChainId>, BenchmarkError>
Auto Trait Implementations§
impl<Env> Freeze for Benchmark<Env>
impl<Env> RefUnwindSafe for Benchmark<Env>where
Env: RefUnwindSafe,
impl<Env> Send for Benchmark<Env>
impl<Env> Sync for Benchmark<Env>
impl<Env> Unpin for Benchmark<Env>where
Env: Unpin,
impl<Env> UnsafeUnpin for Benchmark<Env>
impl<Env> UnwindSafe for Benchmark<Env>where
Env: UnwindSafe,
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<M, I> RuntimeMemory<&mut I> for Mwhere
M: RuntimeMemory<I>,
impl<M, I> RuntimeMemory<&mut I> for Mwhere
M: RuntimeMemory<I>,
Source§fn read<'instance>(
&self,
instance: &'instance &mut I,
location: GuestPointer,
length: u32,
) -> Result<Cow<'instance, [u8]>, RuntimeError>
fn read<'instance>( &self, instance: &'instance &mut I, location: GuestPointer, length: u32, ) -> Result<Cow<'instance, [u8]>, RuntimeError>
Reads length bytes from memory from the provided location.
Source§fn write(
&mut self,
instance: &mut &mut I,
location: GuestPointer,
bytes: &[u8],
) -> Result<(), RuntimeError>
fn write( &mut self, instance: &mut &mut I, location: GuestPointer, bytes: &[u8], ) -> Result<(), RuntimeError>
Writes the bytes to memory at the provided location.
Source§impl<T> Upcastable for T
impl<T> Upcastable for T
Source§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
Source§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref