Skip to content
This repository has been archived by the owner on Mar 22, 2023. It is now read-only.

Optimization ideas #246

Open
1 of 5 tasks
igchor opened this issue Jul 13, 2022 · 0 comments
Open
1 of 5 tasks

Optimization ideas #246

igchor opened this issue Jul 13, 2022 · 0 comments
Labels
performance Type: Feature New feature or request

Comments

@igchor
Copy link
Contributor

igchor commented Jul 13, 2022

  • use pmem2_memcpy_async (Consider use pmem2_memcpy_async in async_append #163) to enable nontemporal stores. Possibly we might need to add extra threshold to perform memcpy using temporal stores.
  • process timestamps in batches of arbitrary size during commit/persist operations (to increase concurrency - currently, thread tries to acquire as many timestamps as possible which might result in other threads waiting instead of doing actual work) (Commit/persist batch processing #245)
  • properly use notifier in wait_committed/wait_persisted - this can be especially important for SPDK integration (?)

DSA specific:

  • use batching (once implemented in miniasync or use DML directly)
  • for small appends, use normal mempcy and DML persist operation in background (combine multiple persists into one in software)
@lukaszstolarczuk lukaszstolarczuk added the Type: Feature New feature or request label Aug 3, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
performance Type: Feature New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants