Anonymous
инструкции новые придумывают, на как в софте gnu gpl так и в железе, свободное железо=)))
Anonymous
поптом весит гигов 16 прога и предъява что у тебя железо говно а не говнософт
Anonymous
а кто vulkan api щупал?
k0rs4r
сейчас уже современные компили обогнать почти нереал. Недавно видел как Rust оптимизирует замыкания (там бекенд llvm ) и офигел
Anonymous
оптимизация кода
k0rs4r
по-моему тут абстракции потекли )))
Anonymous
инглийский со справочником=)
Anonymous
аналоговое программирование=)
Anonymous
Первая в мире вычислительная машина была создана в 1642 году французским математиком. Она была построена на механической основе и могла складывать только десятичные числа.
Anonymous
Ruslan
Что?)
Такой арифмометр был
Anonymous
компьютерам уже больше 300 лет
Anonymous
доделал на xmm регистрах, пока только AVX и без распараллеливания по потокам: https://github.com/nistix/crc-utils
Anonymous
Математика Феликс звали?
Vladimir
Это в честь Дзержинского по-моему
Anonymous
жидкостный был компьютер вообще бомба
Ruslan
Математика Феликс звали?
Дзержинского звали
Anonymous
А, железный
Anonymous
Anonymous
Anonymous
HDD?
Anonymous
heavi
Ruslan
И стоил как самолёт, на котором его перевозили😂
Anonymous
Vladimir
экстишка
Олег
у меня такой в саду валялся...
Дмитро
скажите можно ли комодор компьютер использовать в 2017 теоритически?
Дмитро
можно ли легко делать программы на ассемблере
Дмитро
(для комодор)
Дмитро
просто интересно было бы круто если бы компьютеры были с cpu 2mhz, 8bit. тогда бы компы были бы дешевыми, стоили бы 800 рублей
Anonymous
да нафиг нужен этот калькулятор
Anonymous
лучше макбук
Anonymous
вон япошки оживили магнитую плёнку терабайты запихивают
Anonymous
только скорость доступа к данным - ЖОПА
Anonymous
Anonymous
зачем покупать, набрал камней с дороги
­
(для комодор)
И для него тоже да.
Evgenii
raspberry zero 5 баксов стоил
Anonymous
есть же армы
В натуре
Это время уже наступило
­
/stuff
­
Ботов нет...
Farhodbek
/stuff
Farhodbek
/stuff
Anonymous
Anonymous
🐙 Antony
Привет всем, нужна помощь в следующей задачке:
🐙 Antony
Есть 2 С++ функции, компилятор превращает их в следующий ассемблерный код: https://godbolt.org/g/Jo5jwD Нужно понять, какой код будет выполняться быстрее, при одинаковом количестве входных данных. Другими словами, надо сказать, какя из функций будет работать быстре: https://pastebin.com/raw/piX9WLNj
🐙 Antony
Не подходит, нужен именно компилятор G++7
Volodymyr
Ну тогда, наверное, написать тестовове приложение и провести измерения самому.
🐙 Antony
Ну это так себе вариант :) Хочется железобетонный ответ вида: решение <Х> быстрее, так как <А,Б,С>. Вторая функция приводима к первой, если <Д,Е,Ф>.
k0rs4r
Должен быть первый. Как минимум потому что в цикле меньше обращений к памяти (2 всего)
🐙 Antony
А можно код правой функции преобразовать к коду левой функции? Ну тоесть оптимизатор там схалявил, или для такого преобразования ему недлостаточно данных, или преобразование неравнозначное?
k0rs4r
я не спец в плюсах, но там же структуры данных разные, дека против вектора пар
k0rs4r
потому идентично обработать не получится. Надо на реальных данных тестить, и тип данных под алгоритм подбирать, а не под ассемблер
🐙 Antony
Задача с точностью до наоборот: Один хороший разработчик (не я) хочет добавить к std::deque методы для итерации по чанкам и по элементам чанка. Гипотеза такая, что при этом будет генерироваться более оптимальный код, так как итератор по элементам чанка проще чем итератор по всей деке. Вторая функция - это то, как будет для компилятора выглядеть иетрирование по чанкам с итерированием в них по элементам. Есть другая гипотеза - что оптимизатор может соптимизировать код, использующий итератор деки автоматически до кода "иетрирование по чанкам с итерированием в них по элементам". Так вот, первая функция - использует итератор деки, вторая функция - "иетрирование по чанкам с итерированием в них по элементам". Какая гипотеза подтверждается? :)
k0rs4r
Могу лишь сказать что когда тогда на сайте том смотрел дизасм код - с опцией -O3 для итерации по чанкам генерится с развертыванием циклов и SSE. Потому на больших обьемах данных возможно быстрей будет. По факту лучше взять профайлер и посмотреть, может это и не узкое место программы вовсе
Nikolay
Есть 2 С++ функции, компилятор превращает их в следующий ассемблерный код: https://godbolt.org/g/Jo5jwD Нужно понять, какой код будет выполняться быстрее, при одинаковом количестве входных данных. Другими словами, надо сказать, какя из функций будет работать быстре: https://pastebin.com/raw/piX9WLNj
Не совсем понятно, почему итератор по чанкам должен быть проще, чем итератор по деке, если не лень - распиши подробнее, в чём должно быть преимущество. В приведённом коде очень похоже, что при итерации по последовательному куску памяти (первый вариант) у нас лучше отработает кэш и будет меньше обращений к медленной памяти, чем во втором.
bilka00
но поскольку в первом варианте в цикле меньше операций с памятью он будет быстрей
bilka00
но это мое скромное мнение
bilka00
как говориться на глазок
bilka00
но вполне вероятно что видимо это будет с большими обьемами данных разве что
🐙 Antony
Я вроде как разобрался в первой функции, и она оказалась медленнее. Цикл итерирования по чанку в первом случае выглядит как .L2: cmp rcx, rdx je .L1 .L6: add rax, QWORD PTR [rdx] add rdx, 8 cmp rdx, rsi jne .L2 Во втором случае: .L10: add rax, QWORD PTR [rdx] add rdx, 8 cmp rdx, rcx jne .L10
bilka00
мне кажеться во втором случае обработка не такая ижет
bilka00
идет
bilka00
jne .L11
bilka00
и того хватает то что выше еще на одну метку