Идеальное железо для работы с PM

workoles

Client
Регистрация
02.05.2015
Сообщения
276
Благодарностей
81
Баллы
28
Всем привет! Так и не найдя выход из производительного тупика PM (тема - http://zennolab.com/discussion/threads/nevynosimo-medlennaja-rabota-s-bolshimi-proektami-v-pm.43284/#post-321033) задумался о сборке машины конкретно под него (ProjectMaker).

Задача: максимально ускорить работу с PM на больших проектах (более 2-3 МБ).

Вопросы:
  1. Что в большей мере отвечает за просчет интерфейса PM (CPU или GPU)?
  2. Стоит ли обращать внимание на наличие графического ядра в CPU?
  3. Какие ещё советы можете дать при выборе железа?
 

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 916
Благодарностей
3 857
Баллы
113
Возможно, неплохим временным решением будет разбитие проекта на подпроекты. Да, так редактировать будет чуть сложнее, да и с отладкой не всё так гладко, как хотелось бы (а хотелось бы вот так), но в целом - так будет жить гораздо легче.
Ну и плюс, половину логики если переписать на C#, то тоже станет лучше.
 

Эрнесто Че Гевара

Пользователь
Регистрация
16.11.2017
Сообщения
50
Благодарностей
10
Баллы
8

Обращаем Ваше внимание на то, что данный пользователь заблокирован.
Не рекомендуем проводить с Эрнесто Че Гевара какие-либо сделки.

А есть пример проекта такого обьема?
У меня больше тупило если в шаблоне были статичные данные.
 

workoles

Client
Регистрация
02.05.2015
Сообщения
276
Благодарностей
81
Баллы
28
Возможно, неплохим временным решением будет разбитие проекта на подпроекты.
Ну и плюс, половину логики если переписать на C#, то тоже станет лучше.
С этого и начал. Часть уже упаковано в C#. Но при этом в моём случае часть либо вообще нет смысла конвертить (свитчи, например), либо это очень гемморно. Да и не очень круто осознавать, что ты тратишь время и переделываешь то, что итак уже отлично работает только потому, что программа работает очень медленно. Плюс новый код ещё и оттестить надо заново, а это опять время... Такой подход не очень хорошо вяжется с основным достоинством софта - экономией времени:
Подпроекты тоже не всегда могут улучшить ситуацию. В них можно вынести только самостоятельный участок, который имеет четкое начало и конец, т.е. подпроект должен выполниться полностью, решить какую-то конкретную задачу и вернуться к материнскому. А, если дочерний шаблон может во множестве мест вернуться к материнскому (мой случай), то в материнском необходимо предусмотреть все эти исходы. И чем больше будет развиваться проект, тем больше логики будет наворачиваться, а это уже ерунда какая-то выйдет, а не оптимизация
А есть пример проекта такого обьема?
Проект есть, конечно. Но предоставить я его не могу, к сожалению. Но, как я уже писал здесь, достаточно увеличить число экшенов до нескольких тысяч, чтобы проект в сумме стал 2-3 МБ. И работа сразу встанет.
 

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 916
Благодарностей
3 857
Баллы
113
Полностью согласен со всем вышесказанным, но есть одно "но": смущает, то что у вас шаблон может во множестве мест вернутся к родительскому проекту - это 100% недостаток архитектуры шаблона, т.е. он изначально был спроектирован так, чтоб делать "всё и вся", а это как раз и порождает описанные в стартпосте проблемы :(
Думаю, вы и сами прекрасно понимаете, что даже если проапгрейдите оборудование, то не будет никакой гарантии на то, что через какое-то время, когда проект ещё больше "вырастет" - не возникнет снова эта ситуация... Обидно, досадно, но иногда приходится переписывать всё с нуля и переделывать целиком проекты/программы/софт/инструменты во благо производительности.

Чисто мое мнение, но вам нужно сесть, расписать на бумажке все атомарные (или почти атомарные) действия вашего проекта, а может быть даже лучше построить mind map, чтобы видеть всё, что делается внутри. А потом взять и разбить большой проект на мелкие (не в плане "проект в проекте", а как отдельные шаблоны, которые будут выполнять только свою задачу). Будет эдакий комбайн, но зато от такой организации будет больше плюсов, чем минусов: лучше тестирование и отладка, удобство разработки, быстрота исправления (если что-то сломается).

PS: Для "вправления мозгов" стоит почитать и понять что такое декомпозиция )
 
Последнее редактирование:

workoles

Client
Регистрация
02.05.2015
Сообщения
276
Благодарностей
81
Баллы
28
Думаю, вы и сами прекрасно понимаете, что даже если проапгрейдите оборудование, то не будет никакой гарантии на то, что через какое-то время, когда проект ещё больше "вырастет" - не возникнет снова эта ситуация...
Прекрасно понимаю — это плохой вариант, но дальше двигаться надо.
Обидно, досадно, но иногда приходится переписывать всё с нуля и переделывать целиком проекты/программы/софт/инструменты во благо производительности.
Ага. Уже один раз сделал это. Уменьшил примерно на 1 МБ. Но со временем он опять вырос — что-то постоянно добавляется. И я пока не вижу способов как ещё раз его переделать так, чтобы экшенов было раза в 2 меньше. Да и чую я, он снова разрастётся со временем. Плохо, что у PM есть некий потолок производительности. На каждом железе он свой. Вот я и хочу поднять его как можно выше. Записал видео, где показал как очень просто загнать любой шаблон в ступор - http://zennolab.com/discussion/threads/nevynosimo-medlennaja-rabota-s-bolshimi-proektami-v-pm.43284/#post-324509
PS: Для "вправления мозгов" стоит почитать и понять что такое декомпозиция )
Спасибо! Ознакомлюсь.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)