|
Тяпничный Новогодний mmap
|
|||
---|---|---|---|
#18+
Привет. С Наступающим ВСех. В продолжение 18155192 , 21299029 Итак коллеги. Системный вызов mmap. . Я не буду давать ссылок. Их полно. Приведу шапку мануала чтоб было понятно всем прочим кто не в теме. man Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Я решил оставить 4 базовых вопроса. И не по самой функции ядра а по практическому применению. 1) Ограничения. Сколько можно выделить практически с учотом диска. 2) Реализации в Windows/Unix 3) Практическое применение кроме традиционного (загрузка кода). SQLite? Другие DBMS? Поделитесь где и как вы использовали mmap? Какие цели были достигнуты? Какие были недостатки? Как фиксили. Или как оптимизировали.[/i] (Спасибо колобку. Он уже отписал в топиках ранее) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2018, 22:11 |
|
Тяпничный Новогодний mmap
|
|||
---|---|---|---|
#18+
mayton, mmap использует механизмы вытеснения страниц - и будет эффективен на чтение 4к-страниц. в остальном это выглядит как костыль, нужны тесты ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2018, 22:43 |
|
Тяпничный Новогодний mmap
|
|||
---|---|---|---|
#18+
За исключением случая собственного кэширования на запись. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2018, 22:44 |
|
Тяпничный Новогодний mmap
|
|||
---|---|---|---|
#18+
Вот с тестами вопрос. Я пока прикидываю так и эдак и не нахожу постановки. Что была в тренде. И использовала mmap. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2018, 12:59 |
|
Тяпничный Новогодний mmap
|
|||
---|---|---|---|
#18+
Up. ПОциент не жив и не мёртв а где-то в лимбе. Но я выкину кусок тестового кода который я начал писать до нового года и забросил. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2019, 22:51 |
|
Тяпничный Новогодний mmap
|
|||
---|---|---|---|
#18+
mayton, А какой смысл мерять printf("%02X ", ((byte*)p)[i]) если printf("%02X "), на несколько порядков медленнее чем ((byte*)p)[i] ? Лучше суммируйте байты переменую, а потом в конце выводите. Siemarglmmap использует механизмы вытеснения страниц - и будет эффективен на чтение 4к-страниц. в остальном это выглядит как костыль, нужны тесты Ну, память выделенную в mmap можно тюнить под разные задачи. См. http://man7.org/linux/man-pages/man2/madvise.2.html ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2019, 00:16 |
|
Тяпничный Новогодний mmap
|
|||
---|---|---|---|
#18+
Anatoly MoskovskyА какой смысл мерять printf("%02X ", ((byte*)p)[i]) если printf("%02X "), на несколько порядков медленнее чем ((byte*)p)[i] ? Сюда не смотрите. Это вообще не бенчмарк а просто тест на корректность. Я хотел убедится что содержимое соотвествует шапке архива. По поводу бенчмарка. Я сижу как медведь в зоопарке и раскачиваюсь взад-вперед. Не знаю какую постановку для теста взять. Пару лет назад у нас была унификация записей (sort -u) в толстых терабайтных файлах. Може ее приспособить. Здесь должна быть работа с диском и памятью. Но я не знаю как. Либо какой-то key-value механизм наподобие дисковой хеш-таблички. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2019, 00:57 |
|
|
start [/forum/topic.php?fid=16&fpage=11&tid=1340006]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
72ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 176ms |
0 / 0 |