Сбой после инициализации ZookeeperInstance в программе Java MPI Accumulo

Я пытаюсь создать Linux MPI Java-приложение для Accumulo - пересобрать OpenMPI самостоятельно, чтобы получить libmpi_java и mpi.jar. Аппаратное обеспечение Pretty std x86 /Centos. Я считаю, что основные настройки и настройки для Accumulo/Zookeeper хороши. Вот несколько фактов:

  • Я могу нормально запустить сканирование Accumulo, используя мою программу на Java. Он использует код, как показано в примерах клиента Accumulo, начиная с ZooKeeperInstance() чтобы позже создать BatchScanner.
  • Я могу запустить это же приложение (без вызовов MPI), используя mpirun параллельно. Здесь mpirun просто порождает копии, но, возможно, это показывает, что среда на вычислительных узлах / процессорах настроена нормально для mpirun?
  • Как только я добавлю либо MPI.Init или же MPI.InitThread в приложение, я получаю ошибку Сег 11 до ZooKeeperInstance() завершает (например, в этом методе). Это происходит, даже если я ограничу код сканера одним процессором. Последнее сообщение показывает, что соединение сеанса zookeeper установлено. Просматривая исходный код Accumulo, я вижу, что одним из следующих вызовов является публикация события - возможно, там, где происходит сбой.
  • Я получаю дамп ядра, но все мои попытки использования jstack, чтобы увидеть, где происходит сбой, сообщают о невозможности соединения с ядром. Я использовал gdb, чтобы посмотреть, какой exe-файл использовался для дампа ядра, и посмотреть, /usr/bin/java, но тот или иной exe-файл, отслеженный в символьных ссылках, приводит к невозможности подключения jstack.
  • Я построил MPI, чтобы убедиться, что включены как Java, так и многопоточность, так как я знаю, что код Accumulo захочет использовать потоки. Перепробовал многое другое, настраивая размер кучи в Java, пробуя все параметры в MPI.InitThread(), так далее.

Я думаю, что застрял сейчас и не вижу, куда идти дальше - любая помощь очень ценится. Я заинтересован в использовании Java, поскольку это является родным для Accumulo, и в противном случае мне нужно будет использовать прокси-клиент. Благодарю.

0 ответов

Другие вопросы по тегам