The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9.3, opennews (??), 08-Фев-21, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


17. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от Аноним (17), 09-Фев-21, 02:51 
const uint64_t cadabra =
      rrxmrrxmsx_0(*abra + UINT64_C(7680760450171793) * (unsigned)mdbx_getpid())

качество кода зашкаливает

Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +2 +/
Сообщение от erthink (ok), 09-Фев-21, 02:57 
> const uint64_t cadabra =
>       rrxmrrxmsx_0(*abra + UINT64_C(7680760450171793) * (unsigned)mdbx_getpid())
> качество кода зашкаливает

Не знакомы с иньективными отображениями и примитивами/миксерами хеш-функций?

Но я подскажу вам где действительно стоит критиковать - см. код функции mdbx_update_gc().
Это действительно то, что Howard Chu не стал осиливать ;)

А если "понравится", то начните с https://github.com/LMDB/lmdb/tree/mdb.master/libraries/liblm...

Ответить | Правка | Наверх | Cообщить модератору

53. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от nuclightemail (??), 09-Фев-21, 15:08 
Вполне очевидно, что речь про:

> cadabra
> rrxmrrxmsx_0

а не константы хэшей - которые, впрочем, тоже можно было вынести в макросы.

Ответить | Правка | Наверх | Cообщить модератору

54. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от erthink (ok), 09-Фев-21, 16:25 
>Вполне очевидно, что речь про:
>> cadabra
>> rrxmrrxmsx_0
>а не константы хэшей - которые, впрочем, тоже можно было вынести в макросы.

Это (пожалуй) предельно простой и прозрачный фрагмент кода, примерно как hello world, но не пример из учебника.
Его читаемость улучшит только знание что такое rrxmrrxmsx и чем может быть константа, а не приседания с вынесением "магических" констант в макросы.
Поэтому, пожалуйста, не надо делать что-то вроде code review настолько беспощадно (к себе).
Тем не менее, если вы хотите облагородить какие-то фрагменты кода, то я с радостью приму PR.

Ответить | Правка | Наверх | Cообщить модератору

55. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от llolik (ok), 09-Фев-21, 16:29 
> rrxmrrxmsx_0

Нет бы взяли да назвали RotateRotateXorMultiplyRotateRotateXorMultiplyShiftXor_0, да. Это общепринятые сокращения, а не авторский стиль.

https://github.com/martinus/better-faster-stronger-mixer

Ответить | Правка | К родителю #53 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру