Есть ли в Chronicle Bytes метод супербыстрого сравнения byte []? - PullRequest
0 голосов
/ 14 ноября 2018

Я храню 64-битный хэш Murmur3 в виде байтового массива в байтовом объекте Chronicle. Я пытаюсь сортировать эти ключи как можно быстрее физически. Я реализовал быструю сортировку, чтобы сделать это. Я заметил там набор методов сравнения и обмена, но ничего для байтового массива. Что-нибудь, что я могу использовать, чтобы ускорить мою быструю сортировку? Профилирование показало, что наибольшее давление на net.openhft.chronicle.bytes.AbstractBytes.readCheckOffset(long, long, boolean) AbstractBytes.java

Спасибо за любые подсказки.

1 Ответ

0 голосов
/ 15 ноября 2018

Самый быстрый способ сравнить два байта [] - использовать Unsafe для чтения int или long из базовых массивов (и поменять порядок байтов, если младший порядок равен). Это даст вам очень быстрое сравнение.

По большей части Chronicle Bytes предназначен для работы с памятью без кучи, хотя он также поддерживает и кучу, например, byte [].

...