Vladimir
а с ингкогнита и тора слабо?
Денис
без тора работает точно
Денис
(в инкогнито)
Vladimir
Alex
https://i.gyazo.com/19168b01c0201418d653930bce297def.png
Денис
Денис
Loo
https://github.com/mesalock-linux/mesalink
Денис
в гиттере уже вскрыли, что он на ринг завязан, а ринг — не православный раст
Денис
но вообще хотелось бы конечно иметь чистую имплементацию
Денис
так что либе зачот однозначный
Денис
всего 8 ансейфов
Cuno
Денис
Денис
меня си в первую очередь беспокоит
Dmitriy
И перл
Dmitriy
)
Денис
там такой перл
Денис
https://github.com/briansmith/ring/blob/9ad91faa98e787b35c8fbfdb4b7c3e4acf3effdc/crypto/fipsmodule/modes/asm/ghashv8-armx.pl
Alexander
и J нет, что странно.
Kerrigan
https://gist.github.com/rust-play/b49e9370a84fbd279ff4a6919f81534b написал такую ерунду, как заставить ном сожрать не целый байт, а только 3 бита сначала, а потом 5?
Kerrigan
named!(
take_audio_fug2<(AudioHeader)>,
bits!(do_parse!(
audio_type: take_bits!(u8, 3) >> target: take_bits!(u8, 5) >> (AudioHeader {
audio_type: audio_type,
target: target,
})
))
);
поехавшие наркоманы, как такое вообще можно было придумать
Kerrigan
сделал короче
Денис
да уж, ном не для слабых духом
Kerrigan
պլհկ
Похоже на парсек
Loo
Loo
Это цветочки еще
պլհկ
Но с хуевым синтаксисом
Kerrigan
сейчас пишу на нем варинт
Kerrigan
у мамбла какой-то свой
Kerrigan
чото плагин так себе форматтит
Kerrigan
cargo-fmt получше делает
Kerrigan
надеюсь раст хотя бы литералы при компиляции сам вычисляет?
Маjко
Если он нет — LLVM да
Маjко
Недавно охуел, что htoi для литералов в компилтайме выполнился
Bugworm
https://blog.mozvr.com/firefox-reality-bringing-the-immersive-web-to-mixed-reality-headsets/
doc
А кто за эту storiqa слово скажет?
doc
5 апреля неформальный митап в Storiqa (Мск) http://lnk.al/6qyi #rustycrate
ㅤ
Игнорят на хэдхантере
kitsu
Маjко
Ребят
У нас тут ЧП
Раст быстрее сишки
Kerrigan
кажется мне не хватает 64битного инта
Sergey
Loo
Bugworm
Bugworm
где мы допустили ошибку?
Денис
Маjко
че? где?
Да решили побаловаться, сравнить на задачке из K&R
И я не могу вдуплить каким образом растовая реализация htoi обгоняет сишную на 2нс.
Там нет вообще никаких различий по сути.
Не могу понять какого хрена, так быть не должно
Причем самое смешное то, что я сначала грешил на то, что gcc в build.rs генерит более медленный код, чем LLVM, скомпилил руками и оказалось, что всё наоборот: разрыв только увеличился
Маjко
Маjко
Пф
Маjко
С ними только у тебя проблемы
Денис
👍
Loo
Anonymous
Я как-то раз ради прикола сравнил цикл вывод числа в цикле от одного до 10_000_000, и сишка оказалась в три раза медленнее. Я только потом вспомнил, что руст во время компиляции строку парсил, а в сишке хоть "%d\n" и совсем простая строка, но всё же рантайм.
Маjко
У меня везде блекбоксы
Sergey
Маjко
А, ты про принты
Маjко
Ща
Маjко
https://github.com/mersinvald/htoi
Маjко
Денис
Маjко
Спосеб
Anonymous
В compiler explorer ковырял?
Денис
Anonymous
running 4 tests
test tests::c_htoi ... bench: 43 ns/iter (+/- 3)
test tests::c_htoi_table ... bench: 27 ns/iter (+/- 0)
test tests::rust_htoi ... bench: 49 ns/iter (+/- 1)
test tests::rust_htoi_table ... bench: 28 ns/iter (+/- 2)
расходимся.
Денис
опа
Денис
а я поверил
Маjко
Маjко
Денис
test tests::c_htoi ... bench: 11 ns/iter (+/- 0)
test tests::c_htoi_table ... bench: 9 ns/iter (+/- 1)
test tests::rust_htoi ... bench: 13 ns/iter (+/- 2)
test tests::rust_htoi_table ... bench: 8 ns/iter (+/- 0)
Денис
rust_htoi_table win
Маjко
Повтори пару раз
Маjко
Чтоб не было разброса
Маjко
Но энивей, мне нет смысла врать и рисовать в фш результаты
Anonymous
По-хорошему при таких мелочах надо запихнуть всю систему на одно-два ядра, а бенчи запускать на изолированном, плюс отключить большинство прерываний на этом проце через sysfs
Денис
test tests::c_htoi ... bench: 11 ns/iter (+/- 0)
test tests::c_htoi_table ... bench: 8 ns/iter (+/- 0)
test tests::rust_htoi ... bench: 12 ns/iter (+/- 0)
test tests::rust_htoi_table ... bench: 7 ns/iter (+/- 0)
Маjко