disk_cache: make the thread queue resizable and low priority

Acked-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
Marek Olšák 2017-09-06 23:09:41 +02:00
parent e96d175c7d
commit 7b4b8f6373

View file

@ -358,13 +358,15 @@ disk_cache_create(const char *gpu_name, const char *timestamp,
cache->max_size = max_size;
/* A limit of 32 jobs was choosen as observations of Deus Ex start-up times
* showed that we reached at most 11 jobs on an Intel i5-6400 CPU@2.70GHz
* (a fairly modest desktop CPU). 1 thread was chosen because we don't
* really care about getting things to disk quickly just that it's not
* blocking other tasks.
/* 1 thread was chosen because we don't really care about getting things
* to disk quickly just that it's not blocking other tasks.
*
* The queue will resize automatically when it's full, so adding new jobs
* doesn't stall.
*/
util_queue_init(&cache->cache_queue, "disk_cache", 32, 1, 0);
util_queue_init(&cache->cache_queue, "disk_cache", 32, 1,
UTIL_QUEUE_INIT_RESIZE_IF_FULL |
UTIL_QUEUE_INIT_USE_MINIMUM_PRIORITY);
uint8_t cache_version = CACHE_VERSION;
size_t cv_size = sizeof(cache_version);