pub fn execute<'a>(&'a self, elf: &'a [u8], stdin: &SP1Stdin) -> CpuExecuteBuilder<'a> {
        CpuExecuteBuilder {
            prover: &self.cpu_prover,
            elf,
            stdin: stdin.clone(),
            context_builder: SP1ContextBuilder::default(),
        }
    }
Creates a new [`CpuExecuteBuilder`] for simulating the execution of a program on the CPU.

# Details
The builder is used for both the [`crate::cpu::CpuProver`] and [`crate::CudaProver`] client
types.

# Example
```rust,no_run
use sp1_sdk::{include_elf, Prover, ProverClient, SP1Stdin};

let elf = &[1, 2, 3];
let stdin = SP1Stdin::new();

let client = ProverClient::builder().cuda().build();
let (public_values, execution_report) = client.execute(elf, &stdin).run().unwrap();
```
crates/sdk/src/cuda/mod.rs