mirror of
https://github.com/yuzu-mirror/yuzu.git
synced 2024-11-04 20:39:58 +00:00
d62f57cf5a
Pad FixedPipelineState's size to 384 bytes to be a multiple of 16. Compare the whole struct with std::memcmp and hash with CityHash. Using CityHash instead of a naive hash should reduce the number of collisions. Improve used type traits to ensure this operation is safe. With these changes the improvements to the hashable pipeline state are: Optimized structure Hash: 89 ns Comparison: 103 ns Construction*: 164 ns Struct size: 384 bytes Original structure Hash: 148 ns Equal: 174 ns Construction*: 281 ns Size: 1384 bytes * Attribute state initialization is not measured These measures are averages taken with std::chrono::high_accuracy_clock on MSVC shipped on Visual Studio 16.6.0 Preview 2.1. |
||
---|---|---|
.. | ||
audio_core | ||
common | ||
core | ||
input_common | ||
tests | ||
video_core | ||
web_service | ||
yuzu | ||
yuzu_cmd | ||
yuzu_tester | ||
.clang-format | ||
CMakeLists.txt |