|
|
|
Пропал /proc/sys/kernel/vsyscall64
|
|||
|---|---|---|---|
|
#18+
На моей fedora 17 пропал /proc/sys/kernel/vsyscall64 Он использовался для ускорения работы функцй получения времени. Сейчас его нет, соответсвенно не работает Код: plaintext 1. Как бы его вернуть? Jabber: vromanov@gmail.com ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2013, 11:29 |
|
||
|
Пропал /proc/sys/kernel/vsyscall64
|
|||
|---|---|---|---|
|
#18+
vromanovНа моей fedora 17 пропал /proc/sys/kernel/vsyscall64 Он использовался для ускорения работы функцй получения времени. Сейчас его нет, соответсвенно не работает Код: plaintext 1. Как бы его вернуть? Jabber: vromanov@gmail.com Откатиться к старому ядру и glibc. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2013, 13:06 |
|
||
|
Пропал /proc/sys/kernel/vsyscall64
|
|||
|---|---|---|---|
|
#18+
OoCcОткатиться к старому ядру и glibc. Федора используется для разработки и прогонки маленьких тестов.. Без этой настройки большую часть времени в тестах занимает получение времени. Придется теперь некоторые тесты обязательно на RHEL катать. Или переходить на какой-то другой линукс типа Centos, OEL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2013, 10:16 |
|
||
|
Пропал /proc/sys/kernel/vsyscall64
|
|||
|---|---|---|---|
|
#18+
Итак, решение найдено. В свежих ядрах переделали механизм vsyscall. Теперь для определения точного времени используется TSC Но он не всегда рабтоает. Как проверить - Код: sql 1. 2. 3. 4. 5. Если выдача похожа - значит все ок. Если нет, нужно добавить строчку "processor.max_cstate=1" к параметрам ядра. Это запретить поцессору засыпать, т.к. при этом останавливается таймер. Все это позволит значительно быстре получать текущее время. Пример получаемой разницы Timestamp::Bench_gettimeofday 362 ms, 27616375 operations/sec : OK Timestamp::Bench_gettimeofday 7609 ms, 1314206 operations/sec : OK Т.е. ускорение в 20 раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 15:42 |
|
||
|
Пропал /proc/sys/kernel/vsyscall64
|
|||
|---|---|---|---|
|
#18+
vromanov, а расскажите, с какой целью нужно получать текущее время десятки миллионов раз в секунду? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 15:49 |
|
||
|
Пропал /proc/sys/kernel/vsyscall64
|
|||
|---|---|---|---|
|
#18+
Scott Tigervromanov, а расскажите, с какой целью нужно получать текущее время десятки миллионов раз в секунду? У нас используются очереди сообщений. Каждое сообщение имеет время. Также засекается время нахождения сообщения в очрееди и собирается статистика. Если сообщение лежит в очерели очень долго - дропается или выполняется специальное действие Засекается время выполнения запросов в бд. Собирается статистика, выводятся самые прожорливые запросы Измеряется общее время обработки запроса итд.. Для оптимизации производительности снимаются другие временные параметры В результате получение времени становится достаточно критической задачей, т.к. время выполнения запроса к базе данных становится сравнимым с затратами на измерение этого времени ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2013, 16:51 |
|
||
|
Пропал /proc/sys/kernel/vsyscall64
|
|||
|---|---|---|---|
|
#18+
vromanovScott Tigervromanov, а расскажите, с какой целью нужно получать текущее время десятки миллионов раз в секунду? У нас используются очереди сообщений. Каждое сообщение имеет время. Также засекается время нахождения сообщения в очрееди и собирается статистика. Если сообщение лежит в очерели очень долго - дропается или выполняется специальное действие Засекается время выполнения запросов в бд. Собирается статистика, выводятся самые прожорливые запросы Измеряется общее время обработки запроса итд.. Для оптимизации производительности снимаются другие временные параметры В результате получение времени становится достаточно критической задачей, т.к. время выполнения запроса к базе данных становится сравнимым с затратами на измерение этого времени Тоесть тебе нужен простой и быстрый timestamp? В х84_64 есть команда rdtsc тынц для начала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 11:00 |
|
||
|
Пропал /proc/sys/kernel/vsyscall64
|
|||
|---|---|---|---|
|
#18+
OoCc, Я знаю эту команду. Но с ней все равно надо гемороится. Например, этот счетчки может останавливаться если проц уходит в idle. Его надо масштабировать итд. Собственно именно это и делает gettimeofday. Короче этот счетчик можно ограничено исплользовать для некотрых бенчтестов, но как основной он не годится. Т.к. я совсем не знаю как он, например, поведет себя под виртуализацией, на amd итд ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2013, 18:26 |
|
||
|
|

start [/forum/topic.php?fid=25&fpage=52&tid=1482960]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 241ms |
| total: | 391ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...