Home
last modified time | relevance | path

Searched refs:threads (Results 1 – 25 of 70) sorted by relevance

123

/wasmtime-44.0.1/docs/
H A Dexamples-multithreaded-embedding.md6 * [Rust](https://github.com/bytecodealliance/wasmtime/blob/main/examples/threads.rs)
7 * [C](https://github.com/bytecodealliance/wasmtime/blob/main/examples/threads.c)
8 * [C++](https://github.com/bytecodealliance/wasmtime/blob/main/examples/threads.cc)
15 {{#include ../examples/threads.wat}}
23 {{#include ../examples/threads.rs}}
27 {{#include ../examples/threads.c}}
31 {{#include ../examples/threads.cc}}
H A Dstability-wasm-proposals.md53 | [`threads`] | ✅ | ✅ | ��[^8] | ❌[^4] | ✅ | ✅ |
56 [^4]: Fuzzing with threads is an open implementation question that is expected
57 to get fleshed out as the [`shared-everything-threads`] proposal advances.
94 | [`shared-everything-threads`] | [#9466](https://github.com/bytecodealliance/wasmtime/issues/9466)…
110 [`shared-everything-threads`]: https://github.com/WebAssembly/shared-everything-threads
113 [`threads`]: https://github.com/WebAssembly/threads
H A Dstability-tiers.md87 | WebAssembly Proposal | [`threads`] | fuzzing, API quality |
95 [`threads`]: https://github.com/WebAssembly/threads
132 [`wasi-threads`]: https://github.com/WebAssembly/wasi-threads
161 Wasmtime. For example the `threads` Cargo feature requires the standard library.
163 targets are sound in the presence of multiple threads but will panic on
227 | [`threads`] | ✅ | ✅ |
252 | [`threads`] | ✅ | ❌ |
277 | [`threads`] | ✅ | ❌ |
302 | [`threads`] | ✅ | ❌ |
332 | [`threads`] | ❌[^b] | ❌ |
[all …]
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/
H A Dparking_spot.rs380 threads: $threads:expr,
400 repeats: 10000, latches: 1, delay: 0, threads: 1, single_unparks: 0
406 repeats: 1000, latches: 1, delay: 0, threads: 1, single_unparks: 1
450 let mut threads = Vec::with_capacity(num_threads as _); in run_parking_test() localVariable
453 threads.push(s.spawn(move || test.run())); in run_parking_test()
455 tests.push((test, threads)); in run_parking_test()
465 for (test, threads) in tests { in run_parking_test()
467 for thread in threads { in run_parking_test()
614 let mut threads = vec![thread]; in wait_with_timeout() localVariable
616 threads.push(s.spawn(|| { in wait_with_timeout()
[all …]
/wasmtime-44.0.1/crates/wasi-threads/
H A DREADME.md1 # wasmtime-wasi-threads
3 Implement the `wasi-threads` [specification] in Wasmtime.
5 [specification]: https://github.com/WebAssembly/wasi-threads
9 > for all threads. Due to the complexity of stopping threads, however, this
H A DCargo.toml2 name = "wasmtime-wasi-threads"
5 description = "Wasmtime implementation of the wasi-threads API"
22 wasmtime = { workspace = true, features = ['threads'] }
/wasmtime-44.0.1/
H A D.gitmodules4 [submodule "tests/wasi_testsuite/wasi-threads"]
5 path = tests/wasi_testsuite/wasi-threads
6 url = https://github.com/WebAssembly/wasi-threads
/wasmtime-44.0.1/examples/
H A Dthreads.cc97 std::vector<std::thread> threads; in main() local
98 threads.reserve(N_THREADS); in main()
100 threads.emplace_back(run_worker, engine, module); in main()
101 for (auto &t : threads) in main()
H A DCMakeLists.txt88 create_target(threads threads.c)
89 create_target(threads-cpp threads.cc)
109 create_rust_test(threads)
H A Dthreads.c166 pthread_t threads[N_THREADS]; in main() local
178 pthread_create(&threads[i], &attrs, &run, args); in main()
184 pthread_join(threads[i], NULL); in main()
/wasmtime-44.0.1/cranelift/filetests/src/
H A Drunner.rs80 threads: Option<ConcurrentRunner>, field
95 threads: None, in new()
119 assert!(self.threads.is_none()); in start_threads()
120 self.threads = Some(ConcurrentRunner::new()); in start_threads()
207 if let Some(ref mut conc) = self.threads { in schedule_jobs()
221 while let Some(reply) = self.threads.as_mut().and_then(ConcurrentRunner::try_get) { in schedule_jobs()
292 if let Some(mut conc) = self.threads.take() { in drain_threads()
/wasmtime-44.0.1/crates/test-util/src/
H A Dwasmtime_wast.rs32 threads, in apply_test_config()
67 let threads = threads.unwrap_or(false); in apply_test_config() localVariable
103 .wasm_threads(threads) in apply_test_config()
H A Dwast.rs121 ret.threads = Some(true); in spec_test_config()
200 ret.threads = Some(true); in component_test_config()
256 threads
393 || config.threads(); in should_fail()
400 config.threads() || config.legacy_exceptions() || config.stack_switching() in should_fail()
/wasmtime-44.0.1/tests/misc_testsuite/component-model-threading/
H A Dmany-threads-indexed.wast4 ;; Spawns 5 threads, makes them write their indices into a buffer out-of-order, then yields to them…
15 ;; After all threads have spawned and written their indices to the byte position given by their ass…
19 ;; The main thread will then yield to these threads in the order that they are stored in the buffer,
21 ;; After all threads have been yielded to, the buffer contents will be:
42 ;; A memory block that threads will write their thread indexes and assigned values into
46 ;; We initialize this to 20 (threads * 4 bytes of storage per thread)
71 ;; Spawn 5 new threads with assigned numbers
78 ;; Yield to all threads in ascending order of assigned number
/wasmtime-44.0.1/benches/
H A Dinstantiation.rs94 for threads in 1..=num_cpus::get_physical().min(16) { in bench_parallel()
98 threads, in bench_parallel()
99 if threads == 1 { "" } else { "s" } in bench_parallel()
108 let workers = (0..threads - 1) in bench_parallel()
126 while count.load(SeqCst) != threads - 1 { in bench_parallel()
/wasmtime-44.0.1/tests/all/cli_tests/
H A Dthreads.wat18 ;; Print "Running wasi_thread_start" in several threads.
23 ;; Wait for all the threads to notify us that they are done.
28 ;; wait value and to check if all three threads are complete. This wait is
39 ;; A threads-enabled module must export this spec-designated entry point.
/wasmtime-44.0.1/crates/c-api/artifact/
H A DCargo.toml36 'threads',
62 threads = ["wasmtime-c-api/threads"]
/wasmtime-44.0.1/crates/winch/
H A DCargo.toml35 threads = ['winch-codegen/threads']
/wasmtime-44.0.1/winch/codegen/
H A DCargo.toml42 threads = ['wasmtime-environ/threads']
/wasmtime-44.0.1/crates/cli-flags/
H A DCargo.toml38 threads = ["wasmtime/threads"]
/wasmtime-44.0.1/crates/cranelift/
H A DCargo.toml50 threads = ["wasmtime-environ/threads"]
/wasmtime-44.0.1/tests/all/
H A Dmodule.rs482 let mut threads = Vec::new(); in concurrent_type_modifications_and_checks() localVariable
488 threads.push(std::thread::spawn({ in concurrent_type_modifications_and_checks()
531 threads.push(std::thread::spawn({ in concurrent_type_modifications_and_checks()
541 threads.push(std::thread::spawn({ in concurrent_type_modifications_and_checks()
555 for thread in threads { in concurrent_type_modifications_and_checks()
/wasmtime-44.0.1/crates/c-api/
H A DCargo.toml57 threads = ["wasmtime/threads"]
/wasmtime-44.0.1/cranelift/filetests/filetests/runtests/
H A Dfence.clif10 ; require multiple threads, which requires a runtime like Wasmtime.
/wasmtime-44.0.1/tests/misc_testsuite/threads/
H A Datomics_notify.wast1 ;;! threads = true

123