https://combot.org/chat/-1001043143583 Ссылки на полезные ресурсы: https://ruhaskell.org/links.html ; Информация о мероприятиях: https://gist.github.com/qnikst/a96cac661be80d126d0829f2ced1916e
оно уже разбито на шаги, ациклический граф тасков внутри джобы. там всё понятно как делать. вопрос как выдавать рабочих каждой джобе чоб она могла посчитать таск.
Читать полностью…Так вот же шаги, на которые можно разбить задачи (джобы)! Только как ты собрался делать прерывание перед и после показа дизайнерам? Эта деталь тоже важна
Читать полностью…для очереди приоритетов можно взять psqueues, там их сотня дай бог будет. это ерунда
Читать полностью…ну вот они не совсем статические, но мы можем их пересчитать при каждом шаге шедулера.
т.е. у нас есть группы жобов по приоритетам, далее сортируем по количеству активных тасков и времени создания джобы. и назначаем так чтоб у всех было одинаковое количество воркеров. (раунд-робин).
А приоритеты статические? Если да, то можно перед постановкой задачи в ограниченный пул класть задания в очередь приоритетов, а потом оттуда доставать задачи
Читать полностью…т.е. у тебя жоба, у жобы даг тасков. каждый раз как у тебя есть воркер ты проходишься по джобам и смотришь сколько есть готовых к просчёту тасков и есть ли таски которым подойдёт один из доступных воркеров. и тебе надо решить какой джобе отдать приоритет.
Читать полностью…у нас везде пул бейзд, воркер пишет сколько может взять, и ему выдаётся столько сколько попросил если есть
Читать полностью…Код джоб ты сам пишешь, или он сторонний, и тебе уже будет дан?
Читать полностью…А у тебя job выдают результаты не по всей задаче сразу, а по частям и дизайнеры сразу видят, и тебе их надо «типа одновременно делать»?
Читать полностью…Она описана в книге "Algorithms. A Functional programming appoach"
Читать полностью…А для очереди приоритетов можно взять "двоичную кучу на основе массивов" (array-based binary heap). Что такое "даг"?
Читать полностью…не, я имел в виду, что если задача длительная, то ее хорошо бы тоже разбить на подзадачи
Читать полностью…Если ты можешь задачи разбить на шаги, то это уже пол дела!
Читать полностью…А если динамические, то можно попытаться свести задачу к предыдущей
Читать полностью…вроде как можно начинать с отсутствия данных по воркерам и нормировать все таски, дальше ориентируясь по нормам..
при этом собирать информацию об отменах, успехах, в какой-то момент порефлексировать статистически на данные и полученную модель прикрутить сверху
Тут про другое. У тебя Н художников кидают задачи на ферму. Нужно чтоб они посчитались удобно. Чтоб они быстро получили фидбек, и могли остановить жобу если по первым кадрам видно что накосячили, например. Т.е. нельзя тупо раунд-робить всех воркеров
Читать полностью…В общем-то проблема в том что работа через класс ужасно неэффективна
Читать полностью…В утилс ? Если и ожидал то ли у отдельную. Те нету. Почему? По идее удобно должно быть. Можно писать более массовые функции при таком строковом зоопарке.
Читать полностью…