
Alex Фэils?︙
30.10.2016
12:00:15

Anna
30.10.2016
12:00:16
если кому интересно: https://dou.ua/forums/topic/18849/
на территории РФ может не открыться, попробуйте через впн что-ли
роскомнадзор заблочил доу, насколько я знаю

Google

Anna
30.10.2016
12:01:12
там как раз на плюсах реализация

Дед Пегас
30.10.2016
12:01:33
У меня всё открылось.

Anna
30.10.2016
12:01:42
и куча говнокода и багов, можете глянуть - может кому интересен "самый быстрый Индиан"

Kirill
30.10.2016
12:01:52
Даже через VPN не могу открыть.
Видимо, по IPv6 сервер недоступен.

Anna
30.10.2016
12:02:24
мне друзья говорили,что доу в РФ не пашет

Дед Пегас
30.10.2016
12:02:58
https://github.com/Bazist/HArray.WIN/blob/master/HArray/HArrayInt.h#L135-L174
А зачем такой большой кусок в try?

Anna
30.10.2016
12:03:13
https://github.com/Bazist/HArray.WIN
https://github.com/Bazist/HArray.UNX
вот репы

Дед Пегас
30.10.2016
12:03:25
Да и ... ловить не оч...

Google

Дед Пегас
30.10.2016
12:03:47

abiogenesis
30.10.2016
12:03:52
Их много с таким названием

Anna
30.10.2016
12:03:55

Дед Пегас
30.10.2016
12:04:01
Ишуи/PR-ы принимаешь?)
Хм.

abiogenesis
30.10.2016
12:04:24
Не могу найти

Anna
30.10.2016
12:04:31
это ему с форума начали жаловаться на говнокод и он видимо пытаеться пофиксить креши

Kirill
30.10.2016
12:04:34
Тут просто вопрос: действительно ли в вашем проекте узким местом окажется std::map?

Andrey
30.10.2016
12:04:38
https://github.com/Bazist/HArray.WIN/blob/master/HArray/HArrayInt.h
хренаси ф-ция insert почти 250 строк

Aldar
30.10.2016
12:05:04
не понимаю как вообще можно говорить что какая либо структура данных "уделывает" std::map, если не понимать на каких конкретных операциях и какие trade-off предлагаются

Alexey
30.10.2016
12:05:45

Anna
30.10.2016
12:05:49
РАЗРАБОТКА · 18 октября, 0:12 10431 Booben Com
Booben Com
Самый быстрый Индиан
Ну что мои маленькие сыроеды-любители. Пожалуй качественно вброшу ведь из под моего пера вышла еще одна настоящая нетленка.
Легендарный супероптимизированый алгоритм, который реализует весьма сложные Trie структуры данных и топчет вот эти вот эти ваши самые реализации ассоциативных массивов std::map, glib, dictionary.net и прочью заморскую попсу в разы, а то и на порядок.
github.com/Bazist/HArray.WIN (Windows)
github.com/Bazist/HArray.UNX (Linux)
PS: Готовлю потихоньку раскат гром и молнии на хабр, но пока потренируемся на Доу.
просто перепостила шапку автора

Aldar
30.10.2016
12:06:29
хз, по моему бред какой то

Anna
30.10.2016
12:06:37
там флейм адский кстати, если кто может комменты почитать

Aldar
30.10.2016
12:06:40
в стиле школьника
троллинг)

Andrey
30.10.2016
12:07:19

Anna
30.10.2016
12:07:33

Google

Aldar
30.10.2016
12:07:51

Andrey
30.10.2016
12:08:01

Anna
30.10.2016
12:08:23

Aldar
30.10.2016
12:08:26
"легендарная, супероптимизированная"

Anna
30.10.2016
12:08:42
я когда пыталась разобраться в его коде, у меня из глаз потекла кровь >_<

Aldar
30.10.2016
12:08:46
несерьезно как то

Alex Фэils?︙
30.10.2016
12:08:57
Ну. Чувак нашел алгоритм постфиксного дерева. Реализовал его абы как и хвастается теперь

Anna
30.10.2016
12:09:32
это он сейчас еще как-то причесать пытаеться, а самая первая реализация, которую он выкатил - была вообще адская
адище

Andrey
30.10.2016
12:10:01

Vladislav
30.10.2016
12:10:15

Aldar
30.10.2016
12:10:28
к тому же ничего не сказано про сложность по памяти

Aldar
30.10.2016
12:10:43
сколько эта структура данных ее жрет)


Anna
30.10.2016
12:11:05
сколько эта структура данных ее жрет)
Mike Gorchak Mike Gorchak Graphics Device Driver Developer в QNX Software Systems 25.10.2016 23:59
Нет, не просто не хватило, а что-то вылезло за пределы (пусть даже на 4/8 байта — guard’у пофиг — он пристреливает процесс. Если бы это было легально расширение по типу push или alloca(), то гард бы доаллоцировал ещё 128Mb и сдвинул бы себя в конец 512+128 и так далее, в принципе до тех пор пока стек на наедет на код или данные.
Определить достаточно тяжело, мы портировали один Linux продукт, так у них там таймер заводился на стеке, а обрабатывался таймер в другом потоке, который получал указатель на стек другого потока. Как оно работало под Linux я не знаю, но под QNX мы получали страшные вещи, например, завели таймер, но выполнили задачу раньше и вышли из функции, но таймер не остановили и потом приходит прямая запись в стек из другого потока, что срок таймера вышел, а там в это время работает другая функция и ей трут стек. Так вот никакие valgrind, mudflap, sanitize не помогали. Только когда мы обвернули каждую запись по указателю в макрос, в котором проверяли не пишем ли мы в стек, только тогда нашли где проблема. В твоём случае по-проще конечно, просто старайся меньше использовать стек, используй заранее выделенную при инициализации память для своих внутренних нужд, пусть она и временная. ты всё равно пожираешь память гигабайтами, +/- мегабайт ничего не решит.


Artem
30.10.2016
12:12:46

Anna
30.10.2016
12:14:07
http://pastie.org/private/rphjlt3hrez1tpg2pbqwnw вот что по скорости

Kirill
30.10.2016
12:14:10
"... но под QNX мы получали страшные вещи..." - фигня, в С++ и без этого можно получить Ужасные вещи.

Anna
30.10.2016
12:14:39

Alex Фэils?︙
30.10.2016
12:15:28
Ну чо, чат. Го код ревью этого школьничка??

Google

Alex Фэils?︙
30.10.2016
12:15:37
Или и так всё понятно??

Andrey
30.10.2016
12:15:46
какое там ревью

Alex Фэils?︙
30.10.2016
12:16:05

Kirill
30.10.2016
12:16:12

Alex Фэils?︙
30.10.2016
12:16:29

Admin
ERROR: S client not available

Kirill
30.10.2016
12:17:50
Я давно обещал своему научному руководителю сделать обучающий материал по Xilinx Zynq для будущих поколений студентов. В итоге решили, что мне нужно описать подробно проект из магистерской диссертации.

Дед Пегас
30.10.2016
12:44:13
Кто-нить юзал pugixml?
Эта дрянь не хочет читать нормально из потока.

zk
30.10.2016
12:49:45

Alex Фэils?︙
30.10.2016
12:51:11

Дед Пегас
30.10.2016
12:51:20
Ни на чём.
Просто не хочет из потока читать.
Суёшь прочитанную строку — всё ок.
Код простой как джва пальца
std::ifstream stream("F:/development/fappybird/buildmain/data/example.xml", std::ios::in | std::ios::binary);
std::cout << std::boolalpha << stream.is_open() << '\n';
stream.seekg(0);
pugi::xml_document doc;
auto res = doc.load(stream, pugi::parse_minimal, pugi::encoding_utf8);
std::cout << res.description();
И всё ж.

zk
30.10.2016
12:52:14
Там например после size_t нужно лишние проверки на не меньше ноля убрать

Дед Пегас
30.10.2016
12:53:17
Error reading from file/stream

Google

Дед Пегас
30.10.2016
12:53:20
И всё)

Alex Фэils?︙
30.10.2016
12:53:35
Надо отладить

zk
30.10.2016
12:53:48
Там много чего...

Kirill
30.10.2016
12:54:52
https://www.youtube.com/watch?v=XUqiMEh2PMc

zk
30.10.2016
13:01:51
Что это за хрень const_row и т.п.

Rafael
30.10.2016
13:08:21
ребзи, опять нужна ваша помощь, если у меня реализация методов класса и объявление протота в разных файлах, то как юзать вариадик шаблоны?

Дед Пегас
30.10.2016
13:10:15
Я бы не ебался и шаблон весь описал в хедере)

Kirill
30.10.2016
13:10:23
При использовании шаблонов все должно быть встроенным.

Rafael
30.10.2016
13:14:11
?

Kirill
30.10.2016
13:15:09
Если есть шаблонный класс или шаблонная функция, они не могут быть разделены на загаловочный и исходный файлы.

Rafael
30.10.2016
13:26:12
ибо заебался
да простит меня зевс