@ProCxx

Страница 567 из 2477
Berkus
10.02.2017
16:01:36
WTF per minute = 2

Vitaly
10.02.2017
16:05:23
.travis/build.sh на 630 строк... O_o
Этот весь шлак надо выкинуть.

Berkus
10.02.2017
16:05:40
да да, я это и делаю

Vitaly
10.02.2017
16:07:06
да да, я это и делаю
И наши патчи тоже лучше интегрировать сразу.

Google
Berkus
10.02.2017
16:07:26
сейчас и до них доберусь

залил сюда https://github.com/berkus/tdesktop/tree/fedora-patches

Berkus
10.02.2017
16:35:05
чот я не совсем понял, зачем он депендится на zlib и тащит с собой minizip при этом

а, или там целый zip формат еще, для темок что ли

ну збс в гипе расписаны пути к либам /usr/local/ffmpeg_old/lib/libavutil.a

(libs_loc)/crashpad_oldmac

asdfasdf

Friedrich
10.02.2017
16:45:52
А если ещё шире: если лицензия нарушает законодательство твоей страны, то лицензия не имеет юр. силы.)
Только те пункты, которые нарушают законодательство, а не вся лицензия.

Vitaly
10.02.2017
17:05:32
Berkus
10.02.2017
17:06:19
я уже после патча посмотрел

там в гипах всякого барахла навалено

Vitaly
10.02.2017
17:11:54
там в гипах всякого барахла навалено
Поэтому слелдующим шагом должно быть выкидывание этого GYP вообще.

Google
Berkus
10.02.2017
17:12:17
ну ща, там целый каталог говен понаписан

я пока сделал скелет сборки, ща посмотрю чего ему надо еще

Group Butler [beta]
10.02.2017
17:20:57
/promote
Friedrich now is a moderator

Friedrich
10.02.2017
17:21:38
:3

Evgeniy
10.02.2017
17:33:35
Замерил таки)

Berkus
10.02.2017
17:35:03
41 минута

это с 1000 субсемплов?

Evgeniy
10.02.2017
17:39:09
41 минута
Это юзер

Pepe
10.02.2017
17:45:42
http://www.kevinbeason.com/smallpt/
А в чем соль этого? В том что всего 100 строк?

F.L
10.02.2017
17:53:57
#supapro

Andrei
10.02.2017
18:01:43
А

Кстати, котаны.

Я закончил ядро компилятора.

Написанная версия mersenne-твистора обгоняет плюсовый оптимизированный код :3

При этом код не сложнее плюсового.

Google
Andrei
10.02.2017
18:03:52
~4-5%

Ну, естественно, что там не могло получиться цифр другого порядка.

Но сам факт того, что язык задизайненный за полгода и компилятор написанный за январь + начало февраля уже выдаёт всю синтаксическую функциональность плюсов и даже больше и при этом работает не медленее — это я считаю довольно круто.

Вот за что я люблю маленькие команды.

Surreal
10.02.2017
18:06:28
Он компилирует в плюсы, которые потом компилятся gcc?

Andrei
10.02.2017
18:06:34
Нет, лол.

Он прямо в объектники нативные комплиирует.

Surreal
10.02.2017
18:07:02
Тогда он у вас на ограниченном числе задач будет быстрее.

Andrei
10.02.2017
18:07:18
Meaning..?

Evgeniy
10.02.2017
18:07:31
~4-5%
А с чем сравнивали? Компилятор, флаги?

Andrei
10.02.2017
18:07:42
Это просто фронтенд llvm-а.

Andrei
10.02.2017
18:07:58
А наш код соотв. opt -O2 + llc

Evgeniy
10.02.2017
18:08:46
clang -O2
А какой разброс с О1 и О3

Surreal
10.02.2017
18:09:11
А дайте алгоритм, точнее c++ код, который тестили. Я думаю, тут найдутся люди, которые захотят его сильнее оптимизировать.

Andrei
10.02.2017
18:09:45
Дело конечно еще просто в том может быть, что стандартная реализация твистера не самая потимальная, но это не очень важно, поскольку, суть в том, что по скорости это явно не джава и не питон. Даже устроит быть чуть медленее плюсов, при том, что по языку матепрограммирование прям из коробки гораздо удобнее чем плюсовое.

А какой разброс с О1 и О3
-O3 не влияет никак ни на один из языков в данной задаче. а на O1 не тестили.

К примеру наивный фиббоначи мы делаем медленее чем плюсы на 10%

Google
Andrei
10.02.2017
18:11:32
Оказалось llvm не умеет некоторые оптимизации делать из коробки

бэкендовские.

Но это всё допустимо. И очень хорошо.

Surreal
10.02.2017
18:12:15
брался мерсенн из стандартной библиотеки.
И его код компилился и clang'ом и вашей разработкой? Или под свой компилятор вы вручную писали реализацию?

Admin
ERROR: S client not available

Andrei
10.02.2017
18:13:10
Эм. Наш твистер был написан на нашем языке, разумеется. Затем наш фронтенд компилировал из этого IR который дальше скрамливается llc

С плюсами аналогично

Только там std::mt13397

И код скармливается clang-у

Который внутри сам вызывает llc и opt по сути.

А, да, и это на моей машине. 4720HQ i7

На друго машине плюсы быстрее на 3%

Там проц поновее.

На x86 тоже плюсы побыстрее, но это странное llvm-овское поведение.

Видимо баг им надо зарепортить, или по крайней мере фича-реквест.

Они реально не до конца оптимизируют нативный код. Сравнивали просто ассемблер получившийся, и такие дела, что msvc лучше например генерирует D:

Berkus
10.02.2017
18:26:49
Aldar
10.02.2017
18:28:05
Berkus
10.02.2017
18:28:29
не надо

mersenne длинный

Google
Aldar
10.02.2017
18:28:50
что за язык интересно

Berkus
10.02.2017
18:29:03
так, ладушки, сорцы телеграма в симейк я загнал

теперь надо скомпилять!

Berkus
10.02.2017
18:39:49
опять этот несчастный stdafx.h, где мой cotire

Andrei
10.02.2017
19:01:08
код в студию!)
[] [ { state: 0 624n32 array; index: 624; 5489 state 0 @ set i: 1; [ state i 1 - @ dup 30 rnshift xor 1812433253 * i + state i @ set i 1 + i set i 624 < ] loop } ] [createMt19937] export {state: 0 624n32 array; index: 0;} ptr [ generator:; generator.index 624 = [ state: generator.state ptr; i: 0; [ state i @ 2147483648 and state i 1 + 624 mod @ 2147483647 and or dup 1 rnshift state i 397 + 624 mod @ xor swap 1 and 1 = [ 2567483615 xor ] [ a:; a copy ] if state i @ set i 1 + i set i 624 < ] loop 0 generator.index set ] [] if generator.state generator.index @ generator.index 1 + generator.index set dup 11 rnshift xor dup 7 lshift 2636928640 and xor dup 15 lshift 4022730752 and xor dup 18 rnshift xor ] [useMt19937] export

Да-да. Обратная польская нотация :3

Berkus
10.02.2017
19:01:59
нечитаемо

// we copy some parts of C++11/14/17 std:: library, because on OS X 10.6+ // version we can use C++11/14/17, but we can not use its library :( namespace std_ { да они там наркоманы

Andrei
10.02.2017
19:02:44
нечитаемо
Просто стиль такой. Можно писать и читаемо. Здесь исплоьзуется стековость языка вдоль и поперек.

А к постфиксу быстро привыкаешь. В нём есть свои бенефиты для описания структур данных.

Для какого-нибудь более осмысленного кода будет вполне читаемо.

Страница 567 из 2477