|
Труд вопреки насмешкам
|
|
Есть ли смысл в настоящее время (середина 2020-х) создавать алгоритмы, которые экономят память в ущерб времени?04.06.2024, 18:40. Показов 2519. Ответов 42
Метки нет (Все метки)
Актуально ли это? Речь не идет об O(n3) памяти - только в пределах до O(n) с не слишком большими коэффициентами. Речь также не идет о нишевых алгоритмах в стиле решета Аткина. Речь также не идет о старых ноутбуках, на которых можно ждать несколько часов, зато не вылетит из-за недостатка памяти. Речь также не идет о расходах огромного количества памяти впустую - именно о типичной ситуации, когда экономия времени увеличивает расходы памяти, и наоборот. Речь идет об обычных, повседневных приложениях, таких как браузер, офис, архиватор, IDE с любимыми языками (у нас же тут форум программистов? - для них IDE - повседневность?) В одной из предыдущих моих тем мне написали, потребляют ли методы моей библиотеки много памяти, и я так понял, что это кому-то показалось плохо. Насколько я знаю, в последние десятилетия объемы памяти растут намного быстрее, чем тактовая частота процессоров, и даже если кому-то не хватит "чистой" оперативной памяти, у большинства сейчас большие и быстрые NVMe SSD, на которых всегда можно расширить количество памяти. И насколько я понимаю, время ожидания для большинства важнее, чем несколько гигабайт ОЗУ/подкачки. Предлагаю обсудить.
0
|
|
| 04.06.2024, 18:40 | |
|
Ответы с готовыми решениями:
42
Есть ли смысл создавать магазин Есть ли смысл создавать процедуры? IBE и Delpi 7 Есть ли смысл разгонять память? |
|
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,043
|
||
| 05.06.2024, 05:49 | ||
|
Кому-то надо пережевать огромные массивы данных, которые в ОЗУ не помещаются и он может подождать. А кому-то надо максимальную скорость решения, даже если придётся в магазин идти за сотней-другой гигабайт ОЗУ. И то и другое имеет место быть. В общем, вопрос вникуда.
1
|
||
|
Труд вопреки насмешкам
|
|||||||
| 05.06.2024, 12:04 [ТС] | |||||||
|
0
|
|||||||
|
Администратор
|
|||||
| 05.06.2024, 12:58 | |||||
|
0
|
|||||
|
|
||
| 05.06.2024, 13:18 | ||
|
В целом у любой программы есть аппаратные требования: такой-то процессор, столько-то ОЗУ, столько-то места на диске. Задачи дополнительно расширяют эту вилку. Скажем таже база данных: для кого-то и 1ГБ будет за глаза, а кому-то и 10 не хватит для адекватной работы. В идеале нужно стремится всё сводить к минимуму. На практике... ну лично у меня больше проблем когда программа выжирает много памяти, так как занимаюсь обычно серверными приложениями. Если мой метод будет отжирать много ОЗУ, и он вызовится одновременно несколькими пользователями -- будет больно. Тем не менее я не фанатично экономлю каждый бит, а порой даже наоборот ввожу какой-нибудь кэш. Серебряной пули увы нет.
0
|
||
|
Труд вопреки насмешкам
|
|||||||
| 05.06.2024, 13:41 [ТС] | |||||||
Пересечение немного быстрее, объединение - примерно в 8 раз. P. S. Прошу прощения за "плохие" имена бенчмарков.
0
|
|||||||
|
Администратор
|
||
| 05.06.2024, 14:05 | ||
|
Etyuhibosecyu, думаю этот тест нужно по другому организовать. Ведь методы IntersectWith, UnionWith меняют оригинальную коллекцию. И значит код тестирует ситуацию когда коллекция уже находится в нужном состоянии. Это тоже интересно, но сценарий когда коллекции отличаются тоже нужно проверить. Советую еще разнести тесты IntersectWith, UnionWith и пометить один из них как Baseline чтобы либа показывала Ratio колонки.
0
|
||
|
Труд вопреки насмешкам
|
|||||||
| 05.06.2024, 14:16 [ТС] | |||||||
К сожалению, в пересечении мое хэш-множество в ауте... Вероятно, проблема в том, что объединение добавляет, как и конструктор, а пересечение удаляет, а удаление тормозит. Но как минимум с конструктором мое хэш-множество показывает несравнимое преимущество.
0
|
|||||||
|
Труд вопреки насмешкам
|
||
| 05.06.2024, 14:22 [ТС] | ||
|
0
|
||
|
Администратор
|
|||
| 05.06.2024, 14:26 | |||
|
0
|
|||
|
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,043
|
|
| 06.06.2024, 07:16 | |
|
1
|
|
|
Труд вопреки насмешкам
|
||
| 06.06.2024, 12:15 [ТС] | ||
|
0
|
||
|
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,043
|
||
| 06.06.2024, 12:53 | ||
|
0
|
||
|
Труд вопреки насмешкам
|
||
| 06.06.2024, 12:55 [ТС] | ||
|
0
|
||
|
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,020
|
|||
| 06.06.2024, 14:58 | |||
Все знают, чего ожидать, видя в авторах темы Etyuhibosecyu.А если серьёзно, если вы действительно продерётесь через то что вам предложили, доведете хоть один МР в тот же .NET (или в любой другой опенсорс проект) до принятия - получите такой буст опыта и скиллов, какой с вашими игрушечными говнопроектами не получите никогда. Добавлено через 16 минут Офигеть соптимизировал.
0
|
|||
|
Труд вопреки насмешкам
|
|
| 06.06.2024, 15:00 [ТС] | |
|
0
|
|
|
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,020
|
||
| 06.06.2024, 15:02 | ||
|
0
|
||
|
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,043
|
||
| 06.06.2024, 17:29 | ||
|
0
|
||
|
Труд вопреки насмешкам
|
||
| 06.06.2024, 17:39 [ТС] | ||
|
0
|
||
|
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,043
|
||
| 06.06.2024, 17:41 | ||
|
0
|
||
|
Труд вопреки насмешкам
|
|
| 06.06.2024, 17:45 [ТС] | |
|
0
|
|
| 06.06.2024, 17:45 | |
|
Есть ли смысл увеличить оперативную память? Есть ли смысл добавить оперативную память? Есть ли смысл добавлять оперативную память? Есть ли смысл добавлять оперативную память
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|