У меня есть Java-процесс, который через некоторое время прерывается с помощью SIGSEGV. Это начало происходить после того, как я увеличил объем оперативной памяти на сервере. После тестирования на разных JVM я подозреваю, что это может быть проблема с оборудованием. Но memtest86 не обнаружил никаких проблем.
Итак, что еще я могу сделать, чтобы определить источник проблемы? Стоит ли брать модули ОЗУ по одному для обнаружения неисправного модуля?
Сервер работает на 64-битной OpenSuse11.3.
Похоже, что память не ECC. У меня есть такой комплект (3 * 4 ГБ * 2 = 24 ГБ):
Мы бегаем Memtest86 + против новых систем в течение 48-72 часов, и за эти годы мы обнаружили множество ошибок, которые не проявлялись до 2 или 3 дней. Пары / нескольких проходов просто недостаточно.
Кроме того, не смешивайте ECC и non-ECC, и да, вам, вероятно, придется удалить / манипулировать / повторно протестировать модули RAM, чтобы найти виновника.
Помните, что ошибки сегментации обычно возникают из-за ошибок программирования, таких как переполнение буфера, использование после разыменования свободного и нулевого указателя.
Еще одно предложение по поводу Мемтесты86 +. Memtest наверняка проверит всю память, но иногда аппаратный сбой проявляется только тогда, когда температурные условия машины достигают определенных уровней. Memtest не нагружает диски и другие части системы.
Если вы считаете, что температура может быть проблемой, попробуйте запустить memtest в худших температурных условиях, чем обычно.
После просмотра настроек BIOS появился альтернативный «Множитель системной памяти», который был установлен на 12. Я изменил этот параметр на «Авто», сбоя больше не происходит. Итак, я подумал, что это может помочь другим, у которых есть подобные проблемы.
есть одно приложение, которое может помочь вам проверить наличие ошибок в ОЗУ во время работы вашей системы. Я имею в виду, что вам не нужно перезагружать систему и останавливать работу. Проверка ОЗУ и ваша работа могут выполняться параллельно.
мемтестер
Если вы устанавливаете Ubuntu, вы можете установить его
sudo apt-get install memtester