-
Notifications
You must be signed in to change notification settings - Fork 44
Global Task List
hq6 edited this page Apr 11, 2018
·
23 revisions
- Integrate Arachne into memcached
- New benchmarks with other apps colocated // maybe Gradient Descent?
- Current done with video processing as background
- Fix the Arachne-RAMCloud-YCSB integration.
- Re-run YCSB benchmarks and put results into the paper.
- Revise the paper to incorporate the memcached results
- Refactor
CoreEstimator
to take a CoreList as an argument, and only do estimation across the cores specified therein. Estimation should be deferred if data for the specific CoreList was not previously collected. - Change Core Arbiter's order of allocation and deallocation // May help with benchmarking easier
- Always allocate the hypertwin to the same process.
- When yielding cores, always yield in the same order we received a core.
- Investigate and try to optimize thread exit performance
- Measure the cost of the random number generator
- Unbreak the Synthetic benchmark·
- Peter commented out the portions that allowed us to set various parameters related to core scaling.
- Investigate behavior of background apps running with memcached-Arachne // Time permitting, RAMCloud-Arachne.
- Fix TLS issues in Arachne
- Ensure that empty thread contexts which a core is polling on do not get swapped during thread migration.
- Revisit the bug fixes that Peter implemented and see if there are cleaner solutions.
- Re-run RAMCloud write throughput with the core arbiter running.
- Run the synthetic application without the power of 2. Just make a random
choice.
- Evidence for the power of 2.
- Expect 99% to get worse
- Make all of the paper experiments easy to re-run without source code modification or arcane knowledge.
- Start CoreArbiter Server (setuid binary) in Arachne runtime if it is not already started.
- Integrate Arachne into Redis and/or build other applications on Arachne?
- Insert Core Arbiter / Reimplement Arachne under Go / Java
- Cluster scheduler that interacts with the core arbiter? // Replace Borg
- Analyze all sources of latency in Arachne's operations.
- Do latency & throughput comparisons against Golang's work-stealing load balancer, assuming that threads are created by a central dispatcher.
- Design & implement a new CorePolicy API and architecture. DONE
- Clean up Peter's bug fix for reducing the contexts scanned; one option is simply to remove that optimization until we can come up with something cleaner.