Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | vespalib::SequencedTaskExecutor uses std::optional. Add needed include. | Tor Egge | 2021-11-17 | 1 | -0/+1 |
| | |||||
* | Rename test to reflect current behaviour | Henning Baldersheim | 2021-11-16 | 1 | -1/+1 |
| | |||||
* | Use std::optional instead of separate class. | Henning Baldersheim | 2021-11-16 | 2 | -16/+6 |
| | |||||
* | Address both thread safety in regards to visibility of updates and race for ↵ | Henning Baldersheim | 2021-11-15 | 2 | -31/+51 |
| | | | | the last spots. | ||||
* | If we lost the race for the last spots we need to use the second option. | Henning Baldersheim | 2021-11-14 | 1 | -3/+9 |
| | |||||
* | Add a fixed size table of 8 * num_exutors with 16 bit entries. Use this for ↵ | Henning Baldersheim | 2021-11-13 | 3 | -32/+68 |
| | | | | | | | | mapping the first components exact. With more components than 8x we fall abck to to using shrunk id of 8 bits as before. This enables perfect distribution for the first 8x and then 'good enough' for the rest. The more there are the less impact of imperfect distribution will be. | ||||
* | Test the distribution we get with 8 attributes and 4/8 threads. | Henning Baldersheim | 2021-11-10 | 1 | -0/+24 |
| | |||||
* | Let default watermark be at 50% instead of 10%. | Henning Baldersheim | 2021-11-09 | 1 | -1/+1 |
| | | | | That will favour more frequent wakeups, and should give more stable flow. | ||||
* | Use alternate executor id for push stage when sharing sequenced task executor | Tor Egge | 2021-11-08 | 2 | -0/+18 |
| | | | | with invert stage. | ||||
* | Bundle fields using same executor for memory index. | Tor Egge | 2021-11-05 | 1 | -6/+6 |
| | |||||
* | Rename ISequencedTaskExecutor::sync() to sync_all(). | Tor Egge | 2021-10-28 | 12 | -34/+34 |
| | |||||
* | Update 2020 Oath copyrights. | gjoranv | 2021-10-27 | 4 | -4/+4 |
| | |||||
* | Update 2019 Oath copyrights. | gjoranv | 2021-10-27 | 2 | -2/+2 |
| | |||||
* | foreground executors are never woken up. | Henning Baldersheim | 2021-10-22 | 2 | -2/+2 |
| | |||||
* | properly set utilization | Henning Baldersheim | 2021-10-22 | 5 | -10/+10 |
| | |||||
* | Track time outside of idle loop. | Henning Baldersheim | 2021-10-22 | 1 | -2/+2 |
| | |||||
* | Rename executorCount -> threadCount | Henning Baldersheim | 2021-10-22 | 1 | -1/+1 |
| | |||||
* | Add a metric for how many times a worker in a thread pool has woken up. | Henning Baldersheim | 2021-10-22 | 7 | -11/+38 |
| | | | | Also track the idle time a worker has and add metric for the utilization. | ||||
* | Reduce to 3 tries as this is a rather expensive operation with many smaps. | Henning Baldersheim | 2021-10-20 | 1 | -1/+1 |
| | |||||
* | Silence info message by reducing it to debug. | Henning Baldersheim | 2021-10-20 | 1 | -1/+1 |
| | |||||
* | Use the ExecutorStats type directly. | Henning Baldersheim | 2021-10-19 | 7 | -17/+15 |
| | |||||
* | Update Verizon Media copyright notices. | gjoranv | 2021-10-07 | 5 | -5/+5 |
| | |||||
* | Update 2018 copyright notices. | gjoranv | 2021-10-07 | 2 | -2/+2 |
| | |||||
* | Update 2017 copyright notices. | gjoranv | 2021-10-07 | 244 | -244/+244 |
| | |||||
* | Reduce exposure of internal details to reduce number of includes. | Henning Baldersheim | 2021-06-30 | 1 | -1/+0 |
| | |||||
* | Include cassert when needed. | Tor Egge | 2021-06-04 | 1 | -0/+1 |
| | |||||
* | Add DistributorStripe thread pool with thread park/unpark support | Tor Brede Vekterli | 2021-04-29 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | To enable safe and well-defined access to underlying stripe data structures from the main distributor thread, the pool has functionality for "parking" and "unparking" all stripe threads: * Parking makes all threads go into a blocked holding pattern where it is guaranteed that they may not race with any other threads. * Unparking releases all threads from their holding pattern, allowing them to continue their event processing loop. Also adds a custom run loop for distributor threads that largely emulates the waiting semantics found in the current framework ticking thread pool run loop. But unlike the framework pool, there is no global mutex that must be acquired by all threads in the pool. All stripe event handling uses per-thread mutexes and condition variables. Global state is only accessed when thread parking is requested, which happens very rarely. | ||||
* | Use signed char when needed for base64 encoding. | Tor Egge | 2021-04-28 | 1 | -2/+2 |
| | |||||
* | Avoid using slow std::string and std::ifstream, just use asciistream. | Henning Baldersheim | 2021-03-19 | 1 | -7/+4 |
| | |||||
* | Remove duplicate headers | Jon Bratseth | 2021-03-18 | 1 | -1/+0 |
| | |||||
* | Add copyright headers | Jon Bratseth | 2021-03-18 | 1 | -0/+1 |
| | |||||
* | Ensure NameCollection can not be copied | Henning Baldersheim | 2021-03-18 | 4 | -17/+12 |
| | |||||
* | Avoid std::istringstream construction as it is extremely costly. Use ↵ | Henning Baldersheim | 2021-03-18 | 1 | -17/+15 |
| | | | | lightweight vespalib::asciistream and stringref. | ||||
* | string.h does not need alloc.h | Henning Baldersheim | 2021-02-21 | 6 | -2/+7 |
| | |||||
* | use size literals in vespalib | Arne Juul | 2021-02-15 | 4 | -10/+14 |
| | |||||
* | Less asserts in header files. | Henning Baldersheim | 2021-02-13 | 1 | -0/+1 |
| | |||||
* | Use vespalib::duration for timeouts | Henning Baldersheim | 2021-01-31 | 4 | -7/+8 |
| | |||||
* | Make the test deterministic by waiting for clock to tick at least once. | Henning Baldersheim | 2021-01-07 | 1 | -1/+10 |
| | |||||
* | Waiting 1s should be sufficient | Henning Baldersheim | 2021-01-07 | 1 | -2/+2 |
| | |||||
* | Add explorer for the ExecutorThreadingService used in a document database. | Geir Storli | 2020-12-15 | 6 | -2/+24 |
| | |||||
* | Eliminate inlining warnings. | Tor Egge | 2020-12-04 | 1 | -0/+3 |
| | |||||
* | Make it compatible with c++2a | Henning Baldersheim | 2020-12-02 | 2 | -2/+2 |
| | |||||
* | Name the threads so it is easier to see who is doing what. | Henning Baldersheim | 2020-11-12 | 7 | -19/+29 |
| | |||||
* | Removed unused IFieldBase of Serializer/Deserializer interface. | Henning Baldersheim | 2020-11-09 | 17 | -219/+151 |
| | | | | | Many years ago there were a big plan. But it went nowehere. So let us GC it instead of lying around polluting and bloating the code. | ||||
* | No need to inherit Identifiable. | Henning Baldersheim | 2020-11-07 | 1 | -1/+1 |
| | |||||
* | GC unuse code and use std::mutex/std:condition_variable over vespalib::Monitor | Henning Baldersheim | 2020-10-14 | 1 | -7/+8 |
| | |||||
* | Use std::mutex/std::condition_variable over vespalib::Monitor | Henning Baldersheim | 2020-10-14 | 2 | -20/+15 |
| | |||||
* | - GC the last usages of vespalib::Lock. | Henning Baldersheim | 2020-10-08 | 2 | -6/+5 |
| | | | | - Now it is only vespalib::Monitor left | ||||
* | Use std::mutex for the hash lock | Henning Baldersheim | 2020-10-08 | 2 | -20/+27 |
| | |||||
* | Use std::mutex | Henning Baldersheim | 2020-10-08 | 15 | -183/+33 |
| |