|
Труд вопреки насмешкам
|
|
.NET 8 BigList<T> и BigBitList достигли альфы, что дальше?14.01.2025, 00:38. Показов 5005. Ответов 31
Метки нет (Все метки)
Этой ночью, 13 января 2025 в 23:15, родилась моя мечта, вынашиваемая ЧЕТЫРЕ С ПОЛОВИНОЙ ГОДА!!! 19 июня 2020 в 18:17 была первый раз создана библиотека
BigCollections, на тот момент в составе проекта BorNet, который, вероятно, очень не скоро будет реализован, если вообще когда-либо. В ходе работы над библиотекой она сначала стала самостоятельным проектом, а затем несколько раз переименовывалась, практически потеряв связь со своими "корнями": OptimizedLinq, RedStarLinq, Corlib .NStar (с пробелом), и наконец, Corlib.NStar (без пробела). Библиотека обрастала новыми и новыми классами и методами, но именно большие коллекции все это время не удавалось довести хотя бы до альфы. Этой ночью же мне это удалось (см. также здесь и здесь). Большой список бит успешно прошел проверку на случайное копирование, на все типы конструирования, до которых я смог догадаться, и на число элементов больше int.MaxValue (и даже больше uint.MaxValue). Можете меня поздравить.Это все же профильная тема, а не треп, поэтому возникает вопрос: что делать с этими большими списками дальше? Как довести их до беты? Как увеличить их производительность, учитывая, что создание 1000 списков по 4000 элементов занимает на высокопроизводительном ядре Intel Core i9 (4.9 ГГц) почти три минуты? Как сделать, чтобы вероятность использования этих коллекций кем-либо из "мимокрокодилов" не стремилась к нулю? Возможно, этим коллекциям нужно такое же богатство методов, как основному BaseList<T, TCertain> в Corlib.NStar, или свой набор экстентов? Прошу ответить серьезно.
0
|
|
| 14.01.2025, 00:38 | |
|
Ответы с готовыми решениями:
31
Как работает BigList из Wintellect.PowerCollections? Выделение альфы из ARGB Изменение Альфы материалов в Объекте |
| 14.01.2025, 22:00 [ТС] | |
|
0
|
|
| 15.01.2025, 09:17 | |
|
0
|
|
| 15.01.2025, 09:22 | |
|
Не по теме: Наберитесь терпения. Страница генерируется шаблонизатором red star soft.
0
|
|
|
1341 / 920 / 265
Регистрация: 08.08.2014
Сообщений: 2,775
|
|
| 15.01.2025, 09:54 | |
|
А какие практические задачи это решает?
Просто каждый раз, когда я сталкивался с требованием максимально упоротой оптимизации и необходимостью держать сотни гигабайт информации в памяти, на выходе получались очень узкоспециализированные решения/алгоритмы, заточенные под конкретные данные и условия задачи. И всевозможные стандартные обвязки сразу же отпадали, т.е. хранить коллекцию объектов в виде списка/массива ссылок - так себе вариант, т.к. каждый указатель это минимум 4 байта, а 4 байта помноженные хотя бы на на 2млрд элементов - это уже перерасход 8ГБ памяти чисто под ссылки. И даже обычный шарповский массив тоже оказывался не очень хорош, т.к. он, как минимум, умеет 'IndexOutOfRangeException', а значит при каждом обращении по индексу тратит время на соответствующую проверку, а потому какая-нибудь самописная unsafe-реализация поверх куска/кусков памяти, получается быстрее как минимум из-за отсутствия этой самой проверки.
1
|
|
|
Труд вопреки насмешкам
|
||
| 16.01.2025, 00:16 [ТС] | ||
|
0
|
||
| 16.01.2025, 05:08 | |
|
0
|
|
|
Труд вопреки насмешкам
|
|
| 16.01.2025, 12:13 [ТС] | |
|
Обновил библиотеку, теперь "пустой" метод группировки (без параметров, если вызывать как экстент) запрещен, взамен я покрыл unit-тестами методы FrequencyTable(), которые именно что считают количество совпадений, кроме того, убрал конструктор списка бит из нетипизированного IEnumerable и подписал все ArgumentException, так лучше?
0
|
|
|
475 / 294 / 29
Регистрация: 01.06.2018
Сообщений: 3,676
|
|||
| 17.01.2025, 08:52 | |||
|
Etyuhibosecyu, мне кажется у вас стратегическая ошибка - делиться с другими вашей работой. Вот я этого делать не люблю, пишу чисто для себя для удовольствия и не приходится никому ничего доказывать (иногда приходится слать подальше, так как все уверены что если у тебя нет github то и говорить с тобой не о чем ))))))
1
|
|||
|
14790 / 9564 / 1367
Регистрация: 21.01.2016
Сообщений: 36,060
|
|
| 17.01.2025, 09:37 | |
|
0
|
|
|
548 / 355 / 120
Регистрация: 17.08.2014
Сообщений: 1,351
|
||
| 17.01.2025, 15:38 | ||
|
0
|
||
| 17.01.2025, 19:08 | |||||||
0
|
|||||||
| 17.01.2025, 19:08 | |
|
Что значит public string T и все что дальше в приведенном коде? DriverPack Solution пишет, что CPU перегрет. Что дальше ? Как сделать итерацию что бы она проваливалась дальше и выводила то что мне нужно? Необходимо найти три альфы в треугольнике Не могу понять что дальше делать с кодомю. Мне нужно что бы повторяющиеся числа в массиве удалялись Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
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 и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|