Станислав Макаров: С этим все в порядке. Просто рассматриваю различные варианты оптимизации программы с большим потреблением памяти. Редко используемые объекты (относительно) хотелось бы хранить в разделе памяти, где сборщик мусора не имеет полномочий. В случае, если объект из большой кучи находится в файле подкачки, то сборка мусора может привести к заметным издержкам, чтобы его загрузить. Программа кушает довольно много памяти в силу большого объема данных и вычислений с ними.
Суть вопроса состоит в том, чтобы просто общаться. Интересны мнения опытных программистов, а также людей, которые понимают моделировании. Просто у меня опыт пока не настолько значительный, чтобы быть полностью уверенным в том, что я делаю правильно. Естественно у меня есть руководитель, конечный результат нормальный. Я к примеру добился времени расчета до 400 мс, в то время другая версия программы считала около 8 минут. Но там исключительно мои мысли, а хотелось бы услышать мнения других)
Mrrl: Так вот же, Рихтер пишет, что объекты во 2 поколении не перемещаются в памяти из-за лучшей производительности. Но чтобы он не переместился(если станет вдруг меньше), его нужно закрепить специальным флагом Pinned, о котором я ничего не нашел. Или плохо искал.
Ооо, кстати, насчет виртуализации, я это использую средствами XAML, я использую ItemsStackPanek, которая поддерживает ItemsControl и при этом ListView поддерживает виртуализацию, таким образом я уменьшил нагрузку на графическую систему за счет того, что происходила виртуализация. Так вот из-за этого у меня часто сборщик мусора работает? Смотрел показатели системы - распределение памяти.
Приложение под WinRT)) Инкрементная загрузка и она содержит много ссылок. Это требует большой работы сборщика мусора. Хочу как-то уменьшить нагрузку)) если возможно
Sergey Mozhaykin: Рихтер пишет, что объекты более 85 000 байт переносятся в большую кучу и соответственно относятся уже ко 2 поколению, а там сборщик мусора реже работает. НО размер объекта может стать меньше, для этого он советует ее закрепить.
so-olitary: думаю вас эта книга удовлетворит) там подробно расписывается этот механизм, лучше нее я не видел. Очень глубоко расписывается взаимодействие с системой и почему так сделано. Еще можете почитать CLR via C# .NET 4.5, там про модерн также описывается, только немного с другой стороны
Да, Рихтер тоже пишет, что компилятор создает класс и внешняя компактность в реальности довольно не маленькая) получается, исходя из контекста программы следует рассматривать использование различных методов решения задачи?
Эргил Осин: ды нет) AIMP как минимум для примера. В игры не играю, не интересно) мне интересно, что можно в wine запустить) для общего развития) да и вообще. К примеру, если кому-то ставить линукс, кто до этого сидел на винде, то такой подход на мой взгляд уместен. Новая система, а программы знакомые) и так постепенно переучивать)) Да и в универе многие проги нужны, а так чтобы постоянно не перегружаться, сразу запустить) Если прогать надо, то перегружаюсь для студии) А так просто интересно) AIMP вообще без настроек запускается.
Эргил Осин: да ну нет) я не считаю линукс плохим, хотя старался избегать его до последней поры. А вот поставил, попользовался и мне он понравился) удобный, позволяет многое сделать, с ним еще лучше понимаешь работу систем в целом, а также работу компьютера. Очень удобен для работы. По сути мне интересно настраивать его, вот заодно приятное с полезным. Линукс я бы советовал, удобная вещь)
ну для общего интереса) затем, к примеру, мне нравится AIMP, может я не все проги знаю под линукс, но музыкальные плеер мне только этот нравится, нормальных не нашел под линукс
Может и так) я без понятия, мне необходимо вообще API на основе питона, а реализация вопрос, в котором я не до конца пока понимаю. С линуксом очень недавно знаком))) ЧТо вы посоветуете по данному поводу?