Skip to main content

1d
comment Проблема с доступам к классу unity по указателю из массива
"Беру первые 8 байт от начала массива". Что в следующих (не первых) восьми байтах?
2d
comment Динамическая память в Embedded
Простейший пример. Нужны строки, для вас это строки, вы их как объекты будете где то держать, в лучшем случае замутите пул, и скорее всего кривой, с невыровненными строками и так далее. Тут строки на самом деле вообще не нужны, нужны инты или даже лонги. Никто не запрещает хранить какие то байты как сразу длинные типы. Так вот микрожабщики пошли дальше всех. Потому что использовали строки как длинные типы, и сразу сжатые. А как это? А строки в виде интов (пикселов) держали в пнг-картинках. А так как процы железно умели пнг-картинки разжимать, то и строчки декодировались мгновенно.
2d
comment Динамическая память в Embedded
Если честно, от препулов я давно отказался. У меня это всегда один объект, а как представить доступ к условным псевдо-объектам этого объекта - это решаемо. А вообще пул объектов в МЕ был необходимостью т.к. переиспользование было тотальным, потому что коллектор был исключительно блокирующим, внезапно включался - тормоза лаги полным комплектом. Зря плохо думаете про микрожабу. Именно в ней зародились все те лютые техники оптимизаций на м��сте, которые до сих пор переползают в питоны дот.неты и прочее. Микрожабщик тех лет вам так объекты соптимизирует, что вы ахнете. Это было необходимостью.
2d
comment Динамическая память в Embedded
ЖабаМЕ (Микроедишн). Уникальная штука. ~15 базовых классов и более ничего, хип мегабайт, или меньше. Полностью работоспособная легковесная многопоточная жаба-машина с динамическими аллокаторами. Это было повсеместно у всех миллиардными тиражами.
2d
comment Динамическая память в Embedded
Там где существует многопоток или какие то намёки, то без динамической памяти обойтись сложно. Можно, но сложно. Четыре ядра (условность). Проблематично будет иметь четыре стека и не иметь ничего динамического. Стеки пересекать очень сложно, тут не руки-ноги отстреливаются, а сразу хед-шот.
2d
comment Динамическая память в Embedded
Спасибо. Про то что вы пишете, про терминологию статического/динамического и некоторую неразбериху - оно решено терминологией из физики. Статическое в физике - это не изменяемое по/во времени. Динамическое в физике - изменяемое по/во времени. Иначе говоря, динамический аллокатор который один раз распределён и всегда существует ровно на таком распределении - физически является статическим. Можно писать так - статический (физ.), что бы не перепутать с каким либо программистским статическим.
Feb
25
comment Какие есть опенсорс языки программирования, которые не зависят от крупных компаний?
"Ассемблер под GCC - это выбор сильных и независимых." Ассемблер как таковой - это тоже собственность. С лицензией на право пользования. Уже завтра или уже вчера может взять и измениться. Или уже изменилась.
Feb
25
comment Какие есть опенсорс языки программирования, которые не зависят от крупных компаний?
Идём далее. Что такое некий язык? Обычно это стандарт. Стандарт - это интеллектуальная собственность в любом случае. С языками обычно случается следующее. Язык как чья то поделка (коллективная или индивидуальная) попадает опять же почти всегда в корпорацию какую нибудь. Там и оседает в каком то виде. Если везёт, то корпоративными средствами оно может развиваться, или же нет. Посыл не в этом. Внимательно прочитайте. Сегодня оно (язык) имеет автора, а завтра уже и��еет собственника с кучей лицензий. А послезавтра успешно перепродано. А ещё через три дня успешно всеми забыто.
Feb
24
comment Logo updates to Stack Overflow's visual identity
1. RIMOWA, 2-3. No one, 4. Microsoft, 5. SAINT LAURENT, others - disqualified.
Feb
24
comment Logo updates to Stack Overflow's visual identity
Strong black logo looks like logo for funeral home "Avada Kedavra", and four coffins for your choice.
Feb
23
comment Оптимальный а��горитм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
У меня нет никаких личных восприятий. Риал-тайм - это всегда на здесь и сейчас, а не на когда нибудь там потом. То что вы накарячили выше - это про latency, которое вы же определили как любое, т.е. оно может быть 50 тактов, а может быть миллиард тактов. Вот такое у вас latency. Вас к чему либо сложному сложнее утюга подпускать нельзя. Впрочем, к утюгу тоже нельзя. Более комментариев не будет, бесполезно. Ушёл.
Feb
23
comment Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
Про списки. Которые сразу отвергнуты. Потому что иногда требуют перестроения. А оно не подпадает под риал-тайм, никак. Иначе говоря простейшее добавление/удаление может потребовать перестроения, и всё, риал-тайм "давай дасвиданья". Однако же хеш-таблицы можно накарячить таким способом, которые не будут перестраиваться, никогда. И следовательно будут давать стабильный риал-тайм. Но это при грандиозных условиях налагаемых на хеш-таблицу.
Feb
23
comment Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
@Stanislav Volodarskiy В задачке сравнения есть. И нет ничего проще, чем изначально сравнить например пару хешей, где один хеш точно предрассчитан. Даже если это не хеш-таблица а список, то сравнивать что либо поэлементно всё равно придётся. Далее комментариев не будет, смысла нету.
Feb
23
comment Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
@avp Дело не в том, сколько автору нужно операций в "какую то конкретную интервальную секунду", дело в том, что этот результат автору нужен мгновенно тут же, не через условные 1000 тактов, а через 50 сразу же после запроса (чиселки как пример).
Feb
23
answered Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
Feb
23
comment Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
@Solt Да не вопрос. Предоставьте здесь и сейчас распределения (distributions) кластеров в ваших хеш-таблицах. Которых у вас никогда нет, ибо вашего ничего нет. Вы даже и не знаете что это. Распределения нужны естественно хотя бы на рандомных данных, это обозначьте сами. И на разных количествах этих данных. Данные могут быть например пара лонгов, или строка 16 символов, и так далее. Нужна статистика кластеризации (cluster distributions). Вы даже не знаете что это. Это у вас реальная работа с данными такая вот. Это у вас мирок такой, к ойтишечке никакого отношения не имеющий.
Feb
23
comment Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
@Solt Теоретики они такие ага. Быстренько нашёл, быстренько удалил, быстренько вставил, ну точно точно. Вы даже быстрое сравнение элементов никогда не осилите, так и будете сравнивать поструктурно поэлементно, у вас это производительностью называется. Вместо того что бы сравнивать предрасчитанные хеши, так и будете сравнивать элементы. Производительность же!
Feb
23
comment Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
@Stanislav Volodarskiy У автора куча фиксирована, она у него 100, по понятным причинам всегда 128. Не понимаете, у автора существует только это, нечто, что ему нужно на 100(128) элементов, и всё. А то что оно находится в куче ещё большего масштаба - не имеет значения. И это весьма важно, потому что такая мелкая кучка без раздутых псевдо-объектов - это всегда один мем-пейдж, т.е. оно всё как вихрь залетит в L1, да там и останется. И автору нужно сверхбыстро в этих килобайтах покопаться, что то выкинуть, что то добавить, или массово приписать что то к псевдо-объектам собственной маленькой кучке.
Feb
23
comment Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
И основная проблема здесь, это я вам сразу скажу - это подбор сверхбыстрой хеширующей функции, или прообраза. От этого и только от этого будет зависеть производительность в целом. Больше ни от чего зависеть не будет. У вас куча псевдо-объектов строго зависящих от кластеризации. Кластер находится по хешу, а всякие дальнейшие бодания с кластером - это операции в пределах кластера с обычными боданиями в этом кластере как в обычном списке. При ваших условиях добиться добиться более высокой производительности на чём то другом - невозможно.
Feb
23
comment Оптимальный алгоритм обработки коллекции в реальном времени: сравнение подходов и поиск лучшего решения
У вас однозначно гибридная коллекция, которых свободных дифолтно не существует. Всё то что вы описываете - это гибрид хеш-таблицы на открытой адресации, с возможностью использовать сие как обычный список. И многопоток сюда тоже можно вкрутить, для этого нужны не блокирующие всю коллекцию синк-руты. На самом деле вы описываете по требованиям весьма обычную быстроработащую легковесную __не__управляемую кучу, и не более. И такое естественно существует, но не на жабе, и естественно проприетарное. Т.е. найти это всё в свободном доступе - невозможно.
1 2 3 4 5