Size: a a a

Compiler Development

2021 April 03

a

alez in Compiler Development
источник

KR

K R in Compiler Development
Alexander Tchitchigin
В любом случае, более-менее интерактивная оптимизация на основе обратной связи от компилятора и на уровне абстракции (близком к) исходного языка была бы просто ох*енной.
Там есть и минусы:

1. Хрупкость.

2. Необходимость довольно высокой квалификации у программиста.
источник

DF

Dollar Føølish in Compiler Development
Alexander Tchitchigin
Ну так спор в частности и о том, способны ли в принципе компиляторы справляться с автовекторизацией без помощи со стороны программиста.

Повозившись с автовекторизацией пару раз, я склонен согласиться со стороной, которая утверждает, что не способны. 😄
+++ не работает эта бадяга
источник

AT

Alexander Tchitchigi... in Compiler Development
K R
Там есть и минусы:

1. Хрупкость.

2. Необходимость довольно высокой квалификации у программиста.
"Там" - это где? 😄
источник

Miss Очепятка... in Compiler Development
K R
Там есть и минусы:

1. Хрупкость.

2. Необходимость довольно высокой квалификации у программиста.
Это про квантовые компьютеры?
источник

DF

Dollar Føølish in Compiler Development
Он же про интерактивную оптимизацию
источник

DF

Dollar Føølish in Compiler Development
Зачем вы тролите
источник

KR

K R in Compiler Development
Alexander Tchitchigin
"Там" - это где? 😄
В интерактивной оптимизации. Я думал, что из контекста понятно. 😞
источник

AT

Alexander Tchitchigi... in Compiler Development
K R
В интерактивной оптимизации. Я думал, что из контекста понятно. 😞
Тогда непонятно, почему Вы уверены, что это "хрупко" -- раз, и для низкоуровневой неинтерактивной оптимизации квалификация нужна ещё выше -- это два. 🤷‍♀
источник

DF

Dollar Føølish in Compiler Development
Ну незнай , если компилятор  будет просить доказать теорему....
источник

DF

Dollar Føølish in Compiler Development
А если опровергнуть? Никаких квалификаций не напасешся
источник

KR

K R in Compiler Development
Alexander Tchitchigin
Тогда непонятно, почему Вы уверены, что это "хрупко" -- раз, и для низкоуровневой неинтерактивной оптимизации квалификация нужна ещё выше -- это два. 🤷‍♀
Ну у нас так всё пишется на ассемблере - следовательно зависит только от версии ассемблера и линковщика. А тут добавляется ещё компилятор со своей крайне нетривиальной логикой, новыми оптимизациями и т.д.

В результате, сегодня на версии 4.0.1 он что-то сделал, а версия 4.0.2 попробует по-другом договориться.
источник

KR

K R in Compiler Development
Ну и помимо ассемблера и знаний о платформе придётся знать, как общаться с компилятором (по крайней мере сначала).
источник

AT

Alexander Tchitchigi... in Compiler Development
K R
Ну и помимо ассемблера и знаний о платформе придётся знать, как общаться с компилятором (по крайней мере сначала).
Это и сейчас так: ключи компиляции, прагмы, что там нужно векторизатору и всякое прочее в том же духе. 🤷‍♀
источник

KR

K R in Compiler Development
Да, но сейчас этот диалог через ключи, прагмы и т.д. достаточно ограничен.
источник

KR

K R in Compiler Development
То есть, да, диалог есть уже сейчас. 😊
источник

AT

Alexander Tchitchigi... in Compiler Development
K R
Ну у нас так всё пишется на ассемблере - следовательно зависит только от версии ассемблера и линковщика. А тут добавляется ещё компилятор со своей крайне нетривиальной логикой, новыми оптимизациями и т.д.

В результате, сегодня на версии 4.0.1 он что-то сделал, а версия 4.0.2 попробует по-другом договориться.
Так можно начать жаловаться, что нужно знать семантику языка, на котором пишешь. Как будто для C/C++ знать что там UB, а что -- нет, не обязательно.

Мне непонятно, зачем заново договариваться с новой версией компилятора, если можно сохранить (закешировать) оптимизированную версию?
источник

DF

Dollar Føølish in Compiler Development
Можно тут пожаловаться на знание с++ ?
источник

AT

Alexander Tchitchigi... in Compiler Development
K R
Да, но сейчас этот диалог через ключи, прагмы и т.д. достаточно ограничен.
Эти ограничения и огорчают. При этом результат диалога довольно посредственно сохраняется. Разве что в мейкфайле.
источник

AT

Alexander Tchitchigi... in Compiler Development
Dollar Føølish
Можно тут пожаловаться на знание с++ ?
Нет, Вам в @procxx 😄
источник