vLLM на двух 3090 не стартует с tensor parallel, ошибка NCCL, что делать
Рейтинг: 20.7% · 1 голосов
Войдите, чтобы голосовать
Голосовать «За» и «Против» могут только авторизованные пользователи. Войдите в свой аккаунт — или зарегистрируйтесь, это займёт минуту.
Нет аккаунта? Зарегистрироваться
vLLM на двух 3090 не стартует с tensor parallel, ошибка NCCL, что делать
Не могу поднять vLLM на двух RTX 3090 с tensor-parallel-size 2, валится на инициализации NCCL с таймаутом, одиночная карта работает нормально. Материнка обычная десктопная B650, карты воткнуты в x16 и x4 слоты, p2p между ними не работает (десктопные нвидиа его порезали). Питон 3.11, vllm свежий, cuda 12.4. Кто победил эту связку на потребительском железе, нужны рабочие переменные окружения или это тупик без серверной платы.
✔ Лучший ответ сформирован автоматически — aaannn
рабочий рецепт, поднял ровно такую связку 3090 на B650. ставь переменные перед запуском: NCCL_P2P_DISABLE=1 и NCCL_SHM_DISABLE=1, без них зависает на инициализации намертво как у тебя. дальше для десктопа без нвлинка tensor parallel будет ограничен шиной, особенно если одна карта в x4, я физически переткнул чтобы обе были минимум x8 (пришлось райзер кинуть и в bios форсить bifurcation x8x8 на осн…
Re: vLLM на двух 3090 не стартует с tensor parallel, ошибка NCCL, что делать
@lucky1000, NCCL_P2P_DISABLE=1 пробовал? на десктопе без p2p оно само не догадывается и виснет. ещё NCCL_IB_DISABLE=1 на всякий
Re: vLLM на двух 3090 не стартует с tensor parallel, ошибка NCCL, что делать
x4 слот это боль для tensor parallel, там же постоянный обмен между картами идёт каждый слой, на pcie 4.0 x4 ты упрёшься в шину и скорость будет грустная даже если заведётся. для tp обе карты надо в полноценные x8/x16
Re: vLLM на двух 3090 не стартует с tensor parallel, ошибка NCCL, что делать
@kube6, а зачем тебе вообще tensor parallel на двух картах для инференса, бери pipeline parallel, там обмен между картами на порядок меньше и x4 слот не так критичен. в vllm это другой флаг. tp нужен когда упираешься в латентность одного запроса, для пропускной способности pp часто удобнее и к шине нетребователен
Re: vLLM на двух 3090 не стартует с tensor parallel, ошибка NCCL, что делать
✔ Лучший ответ — сформирован автоматически
рабочий рецепт, поднял ровно такую связку 3090 на B650. ставь переменные перед запуском: NCCL_P2P_DISABLE=1 и NCCL_SHM_DISABLE=1, без них зависает на инициализации намертво как у тебя. дальше для десктопа без нвлинка tensor parallel будет ограничен шиной, особенно если одна карта в x4, я физически переткнул чтобы обе были минимум x8 (пришлось райзер кинуть и в bios форсить bifurcation x8x8 на основном слоте). после этого 70B awq на двух 3090 поднялся, отдаёт 18-20 ток/с на одиночном запросе, на батче из 8 запросов суммарно за 100 ток/с. если переткнуть карты в x8x8 возможности нет, лучше уйди на pipeline-parallel-size 2 вместо tensor, потеряешь в латентности но не упрёшься в дохлый x4. и контролируй версию nccl, в некоторых сборках vllm была регрессия с таймаутами, помогал даунгрейд или явный NCCL_TIMEOUT повыше.
Re: vLLM на двух 3090 не стартует с tensor parallel, ошибка NCCL, что делать
обычная десктопная плата под мультигпу инференс это всегда костыли. если серьёзно играешь в это, ищи бу серверную на эпике с кучей линий pcie, там и x16x16 и p2p живой. на потребительском всегда будешь подтыкать переменные и молиться
Поделиться темой:
✈ Telegram
VK
- Похожие темы
-
-
-
-
- Ошибка App Store rejection 4.3 guideline дублирование приложения как решить
8 ответов · 22 просмотров
-
- TypeScript ошибка Type string is not assignable to type never как исправить
9 ответов · 21 просмотров
-
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей