It turns out that pre-allocating the entire tree was too expensive in terms of memory when using large values for the -mcs and -ics parameters. Pre-allocating the first two dimensions prevents us from ever locking the root node during a put(). Contention between threads over lower levels of the tree should be minimal given that puts are rare compared to gets. Also output dimensions and pre-allocation info at startup. If pre-allocation takes longer than usual this gives the user a sense of what is causing the delay. |
||
|---|---|---|
| licensing | ||
| protected/java | ||
| public | ||
| settings | ||
| .gitignore | ||
| build.xml | ||
| intellij_example.tar.bz2 | ||
| ivy.xml | ||