summaryrefslogtreecommitdiffhomepage
path: root/benchmarks
AgeCommit message (Collapse)Author
2022-12-20Restructured folders: examples, benchmarks, tests into misc folder.Tyge Lovset
2022-12-19Some cleanup in cregex.Tyge Løvset
2022-11-21Updated shootout_hashmap.cpp, and fixed some unsigned warnings.Tyge Løvset
2022-11-20some changes to hashmap benchmarking again.Tyge Løvset
2022-11-20Added benchmark comparison with boost::unordered_flat_map in ↵Tyge Løvset
shootout_hashmaps.cpp. Enabled with -DHAVE_BOOST compiler flag.
2022-11-03Made cmap i_max_load_factor a compile time template parameter instead of ↵Tyge Løvset
runtime. Enables cmap to be NULL initialized. Currently only cvec/cdeq and csmap cannot be NULL initialized, but eventually they will.
2022-11-01Various updates.Tyge Løvset
2022-10-31Improved typesafe c_container_of() macro.Tyge Løvset
2022-10-21Renamed size_t formatting macro c_zu to c_ZU (for replacing %zu on mingw64).Tyge Løvset
2022-10-19Reverted back to c_forrrange from c_forloop. Still available but deprecated.Tyge Løvset
2022-10-14Replaced PRIuMAX with new c_zu macro in examples. "%zu" is not supported by ↵Tyge Løvset
mingw64 and PRIuMAX is not a replacement for "zu".
2022-10-14Update sso_bench.cpp benchmark, and some internal improvements.Tyge Løvset
2022-10-07Fixed a bug in csmap.h regarding #ifndef _i_emplace.Tyge Løvset
Updated a few external maps for benchmarks.
2022-09-26DEPRECATED: c_forrange(): replaced with c_forloop(). This uses 'long long' ↵Tyge Løvset
as iter type, i.e. "%lld" printf format. crange_from() renamed to crange_make(). More docs.
2022-09-23Reverted c_forrange() macro with 3 or more args: swapped 1st and 2nd arg again.Tyge Løvset
2022-09-21Added c_forfilter() macro(s) - easy filtering of elements.Tyge Løvset
2022-09-16Update external c++ unordered maps for benchmarking.Tyge Løvset
2022-08-13Experimental: Renamed c_autovar => c_with, c_autoscope => c_scope, ↵Tyge Løvset
c_autodefer => c_defer. May or may not be reverted before V4.0 release.
2022-08-12cstr V4: Changed cstr functions to take pointers to self, not values. This ↵Tyge Løvset
is consistent with the rest of the containers. csview will still use values, as it is designed to be passed by value.
2022-07-31VERSION 3.9: API change in c_forrange() with >= 3 args. csview updates.Tyge Løvset
2022-07-27VERSION 3.8 BETA: Some changes in cstr / csview APIs: replace* / find*, ↵Tyge Løvset
*_u8(). . See README.md
2022-07-17Tuned benchmark shootout_hashmaps.cpp and updated two external c++ hash ↵Tyge Løvset
tables to newest. Updated benchmarks/build_all.sh
2022-07-15Added shootout_hashmaps.cpp to build_all.sh and fixed warnings.Tyge Løvset
2022-07-15cmap: No longer uses c_umul128. If `i_size` is defined by user, table is ↵Tyge Lovset
power of 2 length and bit-masking used for mapping hash to index.
2022-07-11Fixed documentation changes for size, capacity, empty. Minor changes in some ↵Tyge Lovset
ex. and map shootout.
2022-07-07Merge pull request #29 from ktprime/patch-1Tyge Løvset
add emhash to benchmark
2022-07-07Added emhash by ktprime to external benchmarks. Very fast iteration and lookups.Tyge Løvset
2022-07-07Added missing file: unordered_dense.h. Added -Wall -pedantic to benchmarks ↵Tyge Løvset
and fixed warnings. Thanks to ktprime for reporting.
2022-07-07add emhash to benchmarkhyb
2022-07-06Version 3.7. Make sure to check NEWS/Changes in README.md for a few ↵Tyge Løvset
code-breaking API changes.
2022-06-02Improved namings in utf8tabs.py and removed unicode tablesTyge Løvset
2022-06-02updated cstr and csview docsTyge Lovset
2022-06-01Converted all files with DOS line endings to LINUX.Tyge Løvset
2022-05-30Updated benchmarks and renamed utf8utils.c to utf8code.cTyge Løvset
2022-05-24API change: cbits now uses container pointers args in all member functions, ↵Tyge Løvset
except clone() ... for now. All containers may get same treatment! which will be a rather big API change. This was needed after testing fixed size cbits performance with pass-by-value: was very slow for large bitsets: now faster than std::bitset<>. Also reverted previous cbits_set_value(): much faster because it is branchless.
2022-05-18Formatted carc.h cbox.h: also simplified; removed _get() -> was same as ↵Tyge Løvset
_toraw(), see template.h diff.
2022-05-10Renamed (newish) functions expand_uninitialized to expand_uninit. + some ↵Tyge Lovset
minor changes.
2022-05-09Small improvement in c_default_hash()Tyge Løvset
2022-04-27Finally FIXED cloning/to/from scheme to work properly. When using ↵Tyge Løvset
i_key_bind/i_val_bind, a .._clone() function *must* always be defined. Functions .._from and .._toraw is only required when i_keyraw/i_valraw type is defined.
2022-04-25Removed size argument to `i_hash` template parameter and `c_default_hash`. ↵Tyge Løvset
This was a "design error", and is not worth keeping for backward compability. Please update your code where you use i_hash template parameter (simply remove second argument).
2022-04-25Some maintainance. Updated sso_bench.cppTyge Løvset
2022-04-24Updated docs to use cstr_str(&s) instead of s.strTyge Løvset
2022-04-24Fixed unfair comparison; std::move must be used in c++ push_back(). STC has ↵Tyge Løvset
almost identical performance to c++ STL, but STC cstr has 23 chars short strings vs typically 15 for c++ std::string, so STC is faster in this range.
2022-04-24Created VERSION 3.5. See News section in docs for changes.Tyge Løvset
2022-04-23Integrated (and removed) c_hash32 and c_hash64 into c_default_hash, which is ↵Tyge Løvset
improved. Added i_key_ssv and i_val_ssv (cstr with csview as raw-type).
2022-04-18crandom.h: Renamed *_init(..) functions to *_new(..). Old names are kept but ↵Tyge Løvset
deprecated.
2022-04-18Renamed stc64_random() => crandom(), stc64_srandom(seed) => csrandom(seed). ↵Tyge Løvset
Kept old names for backward comp.
2022-04-18Converted all example to use cstr_str(&s) instead of s.str to allow SSO ↵Tyge Løvset
string. Fixed misc warnings.
2022-04-09- Switched from .._put() to .._push() as the "generic" method to add ↵Tyge Løvset
element to any container. - Changed clist_X_insert()/emplace() to clist_X_insert_at()/emplace_at() to make it consistent with cvec/cdeq. - Updated documentation.
2022-04-09Optimizing push_back() cvec/cdeq and some minor stuff.Tyge Lovset