Skip to content

Commit

Permalink
Merge pull request #6 from Bathtor/futures
Browse files Browse the repository at this point in the history
Futures
  • Loading branch information
Bathtor authored Jul 13, 2020
2 parents 21e517f + 9c260d2 commit 91cf1bf
Show file tree
Hide file tree
Showing 13 changed files with 1,236 additions and 260 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Add this to your `Cargo.toml`:

```toml
[dependencies]
executors = "0.6"
executors = "0.7"
```

You can use, for example, the [crossbeam_workstealing_pool](https://docs.rs/executors/latest/executors/crossbeam_workstealing_pool/index.html) to schedule a number `n_jobs` over a number `n_workers` threads, and collect the results via an `mpsc::channel`.
Expand Down Expand Up @@ -59,7 +59,7 @@ You can enable support for pinning pool threads to particular CPU cores via the

## Some Numbers

The following are some example result from my desktop machine (Intel i7-4770 @ 3.40Ghz Quad-Core with HT (8 logical cores) with 16GB of RAM).
The following are some example results from my desktop machine (Intel i7-4770 @ 3.40Ghz Quad-Core with HT (8 logical cores) with 16GB of RAM).
*Note* that they are all from a single run and thus not particularly scientific and subject to whatever else was going on on my system during the run.

Implementation abbreviations:
Expand Down Expand Up @@ -170,6 +170,6 @@ This corresponds to a very large internal workload in response to every external

## License

Licensed under the terms of MIT license.
Licensed under the terms of the MIT license.

See [LICENSE](LICENSE) for details.
16 changes: 12 additions & 4 deletions executors/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name = "executors"
# NB: When modifying, also modify:
# 1. html_root_url in lib.rs
# 2. number in readme (for breaking changes)
version = "0.6.1"
version = "0.7.0"
authors = ["Lars Kroll <[email protected]>"]
edition = "2018"
description = "A collection of high-performance task executors."
Expand All @@ -19,8 +19,8 @@ license = "MIT"
default = ["threadpool-exec", "cb-channel-exec", "workstealing-exec", "ws-timed-fairness", "defaults"]

threadpool-exec = ["threadpool"]
cb-channel-exec = ["crossbeam-channel"]
workstealing-exec = ["crossbeam-channel", "crossbeam-deque", "rand", "crossbeam-utils"]
cb-channel-exec = ["crossbeam-channel", "async-task"]
workstealing-exec = ["crossbeam-channel", "crossbeam-deque", "rand", "crossbeam-utils", "async-task"]
defaults = ["num_cpus"]

# In the workstealing executor, check the global queues every 1ms
Expand All @@ -41,14 +41,17 @@ crossbeam-channel = {version = "0.4", optional = true}
threadpool = {version = "1.7", optional = true}
crossbeam-utils = {version = "0.7", optional = true}
crossbeam-deque = {version = "0.7", optional = true}
#time = {version = "0.2", optional = true, default-featurs = false, features = ["std", ""]}
rand = {version = "0.7", optional = true}
num_cpus = {version = "1.12", optional = true}
core_affinity = {version = "0.5", optional = true}
#futures = {version = "0.3", optional = true}
async-task = {version = "3.0", optional = true}

[dev-dependencies]
env_logger = "0.7"
version-sync = "0.8"
criterion = "0.3"
futures = "0.3"


[badges]
Expand All @@ -58,3 +61,8 @@ version-sync = "0.8"
maintenance = { status = "actively-developed" }

travis-ci = { repository = "Bathtor/rust-executors", branch = "master" }

[[bench]]
name = "scheduler"
path = "benches/scheduler.rs"
harness = false
Loading

0 comments on commit 91cf1bf

Please sign in to comment.