Уведомления

Группа в Telegram: @pythonsu

#1 Май 27, 2025 02:39:05

misterMinister
Зарегистрирован: 2021-09-06
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

Здравствуйте.
Я написал небольшую программу. Она принимает файл, обрабатывает его и выдает результат. Проблемы начинаются тогда, когда размер файла привышает 100 мб, ОС просто убивает процесс. Вот я думаю, что можно сделать, добавить многопоточность или многопроцессность? С одной стороны, многопоточность не занимает столько много ресурсов компьютера, как многопроцессность. С другой стороны, многопроцессность работает более стабильно.

А вы что думаете? Что бы вы выбрали: многопоточность или многопроцессность? Или вобще третий вариант?

Отредактировано misterMinister (Май 28, 2025 04:11:46)

Офлайн

#2 Май 27, 2025 12:06:05

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9999
Репутация: +  857  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

Есть многопоточность и многопроцессность. Никак не многопроцессорность. Это в питоне многопоточность неполноценная, поэтому не может выполняться параллельно на разных ядрах процессора. И из-за этого для распараллеливания используют многопроцессность, так как управление процессами находится в операционной системе, а операционная система может уже распределять процессы по разным ядрам процессора.

misterMinister
Проблемы начинаются тогда, когда размер файла привышает 100 мб
Причина не выяснена. Вместо залепливания этой дырки чем угодно, лучше будет установить причину сбоя. Скорее всего, там в алгоритме что-то не учтено.



Отредактировано py.user.next (Май 27, 2025 23:11:32)

Офлайн

#3 Май 27, 2025 13:49:48

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2828
Репутация: +  185  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

> Что бы вы выбрали: многопоточность или многопроцессорность?

Что хочешь, то и выбирай. Всё равно ни одно ни другое тебе не поможет.

> когда размер файла привышает 100 мб, ОС просто убивает процесс

Читай файл частями и обрабатывай их последовательно.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#4 Май 28, 2025 04:47:51

misterMinister
Зарегистрирован: 2021-09-06
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

py.user.next

Есть многопоточность и многопроцессность. Никак не многопроцессорность.
Извиняюсь. Исправил.

Причина не выяснена. Вместо залепливания этой дырки чем угодно, лучше будет установить причину сбоя. Скорее всего, там в алгоритме что-то не учтено.
Я не знаю, что может быть не учтено. Я сейчас добавил блок try/except и больше ОС прощесс не прерывала. Программа работает, но чем больше файл, тем больше времени на обработку.

Офлайн

#5 Май 28, 2025 05:13:37

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9999
Репутация: +  857  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

Опиши конкретно программу. Вариантов может быть сотня и причин тоже.



Офлайн

#6 Май 28, 2025 16:03:07

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2828
Репутация: +  185  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

> Я сейчас добавил блок try/except и больше ОС прощесс не прерывала

И какая там ошибка?



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#7 Май 28, 2025 21:51:24

misterMinister
Зарегистрирован: 2021-09-06
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

Rodegast

И какая там ошибка?
В том-то и проблема, что ни какой. Просто в терминале появляется сообщение “killed”. Еще, до запуска программы память загружена на 15% - 20%, а после запуска до 99% - 100%. Я думаю, что сбой происходит именно по этой причине. Программа занимает слишком много памяти.

py.user.next
Опиши конкретно программу.
Ничего особенного. Программа конвертирует файл в другой формат. Пока это картинки только.

Офлайн

#8 Май 29, 2025 03:08:21

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9999
Репутация: +  857  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

py.user.next
Опиши конкретно программу.
misterMinister
Программа конвертирует файл в другой формат.
Как программа конвертирует файл? Из какого формата в какой конвертирует? Твоя программа на питоне вообще делает что во всей этой системе?



Офлайн

#9 Июнь 28, 2025 06:08:50

misterMinister
Зарегистрирован: 2021-09-06
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Мультипроцессность или мультипоточность

Извиняюсь что не отвечал долго. Я руку сильно повредил. Сейчас ничего не могу делать. Пока отложил все проекты.
Всем спасибо.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version