Скрытые узкие места многопоточности в Jython?

Какие общие скрытые вещи могут затруднить многопоточность / параллелизм в Jython? У меня есть параллельный код (с использованием Python ' s threading library), которая не масштабируется после 3-4 процессоров, и я уверен, что это не из-за какой-либо из этих очевидных ловушек:

  • Явные блокировки

  • Вызов кода библиотеки, который требует синхронизации (алгоритм, который я попытка распараллеливания в основном написана с нуля и не использует никаких библиотек.)

По сути, все, что делает алгоритм, - это связка обработки строк, поиск по спискам и словарям и математика. Насколько я понимаю, в отличие от CPython, Jython не имеет GIL.

5
задан dsimcha 19 November 2010 в 17:48
поделиться