avva: (Default)
avva ([personal profile] avva) wrote2015-09-21 06:57 pm
Entry tags:

попались

Любопытная новость: в Америке агентство по защите окружающей среды поймало "Фольксваген" на том, что они ставили в дизельные машины специальную программу. Эта программа определяла, когда машина проходит тест выхлопа (следила за работой двигателя, положением руля, итд.), и тогда включала режим очистки на максимум. А при обычной езде режим другой, и уровень загрязнения превышает разрешенный в 40 раз.

Теперь их обязали заменить 500 тысяч проданных за последние 7 лет автомобилей нескольких марок, и еще видимо оштрафуют на какие-то миллиарды.

Подробности напр. в: "Репутация Volkswagen задымилась".

[livejournal.com profile] ygam напомнил в одном из обсуждений, что это похоже на историю пятилетней давности уже из компьютерной индустрии. Тогда Интел поймали на том, что их компилятор выдает особо оптимизированный код, только когда его запускают на процессоре Интела, а на AMD генерирует код помедленней. То есть так: он смотрит на прошитое в процессоре имя вендора, и если это GenuineIntel, то делает всякие разные оптимизации в зависимости от того, что CPU реально поддерживает. А если нет, он никаких оптимизаций не делает, и для нового AMD выдает такой же код, как для древнего Pentium III.

Причем любопытно, что это так и не изменилось с тех пор. Вроде бы Интел заставили заплатить штраф и документировать это поведение компилятора, но он продолжает так себя вести. Год назад в реддите было обсуждение, и кто-то залез в свежую версию компилятора и проверил:



(это код, который ищет фразу GenuineIntel, и в зависимости от того, находит или нет, продолжает запускать разные процедуры оптимизации; если не находит, то оптимизации реально никакой нет)

[identity profile] http://users.livejournal.com/_winnie/ 2015-09-21 04:07 pm (UTC)(link)
В случае с Intel - это может быть более доброкачественной ситуацией вида "мы не можем отвечать за то, что наша хитрая оптимизация под хаки и особенности нашего процессора - не даст обратного эффекта на чужом процессоре"

Есть более тёмная история из IT - драйвера NVidia/ATI были пойманы на том, что искусственно оптимизировались под особенности бенчмарков, (без пользы для остальных игрушек)

Прямо сейчас - на виду истории вида "соцсеть Foogram.com запретила ссылки на Kontbook.com"
Edited 2015-09-21 16:08 (UTC)
vladimir000: (Default)

[personal profile] vladimir000 2015-09-21 04:15 pm (UTC)(link)
> "мы не можем отвечать за то, что наша хитрая оптимизация под хаки и особенности нашего процессора - не даст обратного эффекта на чужом процессоре"

Нормальный способ решения этой проблемы - ключ кмпилятора "оптимизировать под такую-то версию процессора", ИМНО.

(no subject)

[identity profile] green-fr.livejournal.com - 2015-09-21 16:20 (UTC) - Expand

(no subject)

[personal profile] vladimir000 - 2015-09-21 16:23 (UTC) - Expand

(no subject)

[identity profile] meshko.livejournal.com - 2015-09-21 16:42 (UTC) - Expand

(no subject)

[identity profile] b0p0h0k.livejournal.com - 2015-09-21 16:45 (UTC) - Expand

(no subject)

[identity profile] meshko.livejournal.com - 2015-09-21 17:03 (UTC) - Expand

(no subject)

[identity profile] meshko.livejournal.com - 2015-09-21 19:13 (UTC) - Expand

(no subject)

[identity profile] b0p0h0k.livejournal.com - 2015-09-21 19:26 (UTC) - Expand

(no subject)

[identity profile] avva.livejournal.com - 2015-09-21 19:39 (UTC) - Expand

(no subject)

[identity profile] dibr.livejournal.com - 2015-09-21 17:17 (UTC) - Expand

(no subject)

[identity profile] gegmopo4.livejournal.com - 2015-09-21 19:17 (UTC) - Expand

(no subject)

[identity profile] liddaged.livejournal.com - 2015-09-21 17:36 (UTC) - Expand
(deleted comment)

[identity profile] ashamrin.livejournal.com 2015-09-21 04:41 pm (UTC)(link)
> как уже ответили выше, интеловские оптимизации на амд могут не поддерживаться на аппаратном уровне.

Нет. Компилятор проверяет процессор, на котором работает сам компилятор. И ещё не известно, на каком процессоре будет потом запускаться скомпилированная программа. Вот если бы проверка типа процессора шла в рантайме, тогда ваше замечание имело бы смысл.

[identity profile] shlema.livejournal.com 2015-09-21 04:41 pm (UTC)(link)
На похожем ещё ловили производителей Android-смартфонов: они определяют, что запущено тестовое приложение, и включают максимальную производительность выше стандартной (точнее, поднимают ограничение температуры GPU, как я понимаю).

Вот тут, например: http://www.anandtech.com/show/7384/state-of-cheating-in-android-benchmarks

[identity profile] mux22.livejournal.com 2015-09-21 05:25 pm (UTC)(link)
самсунг очень этим славился, да

[identity profile] tr1gger.livejournal.com 2015-09-21 04:45 pm (UTC)(link)
В браузерах тоже раньше было принято определять в каком мы браузере, чтобы понять какие фичи поддерживаются.
Слава богу это в прошлом, сейчас принято каждую фичу отдельно проверять (feature detection vs browser detection). Ну и браузеров и их версий расплодилось столько, что всех не проверишь.

[identity profile] pavlikk.livejournal.com 2015-09-21 04:46 pm (UTC)(link)
Если бы у меня не было нового Фольксвагена, купил бы.
Fuck the system!

[identity profile] irrelative.livejournal.com 2015-09-21 05:23 pm (UTC)(link)
У меня как раз Golf TDI 2013 года. С живым интересом слежу за развитием событий.

[identity profile] levtsn.livejournal.com 2015-09-21 04:50 pm (UTC)(link)

УмнО

[identity profile] vova-belkin.livejournal.com 2015-09-21 04:52 pm (UTC)(link)
Понятно, что боши заплатят за всё, но всё-таки интересно, как "автомобиль" определяет что он именно проходит емишшен-тест, да не какой-нибудь, да государственный, а не допустим просто работает на холостом ходу?

Вроде как "тест на выхлоп" проводится вставлением специального прибора в выхлопную трубу, никак не могу вообразить, что можно как-то этот момент особо отследить, без наделения жестяного глушителями свойствами искусственного интеллекта.

[identity profile] levtsn.livejournal.com 2015-09-21 04:56 pm (UTC)(link)

Холостой ход оптимизиоовать это не проблема. А вот на мощности - это потеря мощности и динамтки авты.

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-21 17:12 (UTC) - Expand

(no subject)

[identity profile] lolaley.livejournal.com - 2015-09-21 19:01 (UTC) - Expand

(no subject)

[identity profile] edo-rus.livejournal.com - 2015-09-21 22:23 (UTC) - Expand

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-21 22:44 (UTC) - Expand

(no subject)

[identity profile] edo-rus.livejournal.com - 2015-09-21 23:55 (UTC) - Expand

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-22 00:08 (UTC) - Expand

(no subject)

[identity profile] irrelative.livejournal.com - 2015-09-21 17:10 (UTC) - Expand

(no subject)

[identity profile] mux22.livejournal.com - 2015-09-21 17:27 (UTC) - Expand

(no subject)

[identity profile] irrelative.livejournal.com - 2015-09-21 17:38 (UTC) - Expand

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-21 18:14 (UTC) - Expand

(no subject)

[identity profile] irrelative.livejournal.com - 2015-09-21 19:42 (UTC) - Expand

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-21 21:33 (UTC) - Expand

(no subject)

[identity profile] dumalkin.livejournal.com - 2015-09-21 17:19 (UTC) - Expand

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-21 18:25 (UTC) - Expand

(no subject)

[identity profile] dumalkin.livejournal.com - 2015-09-21 18:29 (UTC) - Expand

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-21 18:50 (UTC) - Expand

(no subject)

[identity profile] jmyshanya.livejournal.com - 2015-09-21 18:13 (UTC) - Expand

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-21 18:18 (UTC) - Expand

(no subject)

[identity profile] caztd.livejournal.com - 2015-09-21 20:05 (UTC) - Expand

(no subject)

[identity profile] vova-belkin.livejournal.com - 2015-09-22 12:25 (UTC) - Expand

(no subject)

(Anonymous) - 2015-09-23 00:54 (UTC) - Expand

[identity profile] massaraksh10.livejournal.com 2015-09-21 04:54 pm (UTC)(link)
Ну, Вольксваген нарушает закон, а Интел же вроде нет?

[identity profile] karpion.livejournal.com 2015-09-21 05:25 pm (UTC)(link)
Законы можно принять какие нужно. Приняли же в ЕС закон о зарядниках к телефонам.

[identity profile] levtsn.livejournal.com 2015-09-21 04:55 pm (UTC)(link)

Вобще то по идее выхлоп мерят на холостых. Чем там можно играть чтобы выхлоп уменьшать на мощности? На холостом стгит датчик кислорода и подбирает бедную смесь. А что можно менять на ходу, так чтоб за счет загрязнения иметь прирост мощности я не знаю. Угол зажигания чтоль или фазы газораспределения, так они ремнем грм задаютмя не порегулируеш.

[identity profile] irrelative.livejournal.com 2015-09-21 05:16 pm (UTC)(link)
В Штатах не на холостых - всегда на катках (валиках - или как это там называется?). Причем, делается несколько замеров на разных оборотах, то есть можно, по идее, еще и "паттерн" узнавать.

(no subject)

[identity profile] occuserpens.livejournal.com - 2015-09-22 21:52 (UTC) - Expand

(no subject)

[identity profile] just1user.livejournal.com - 2015-09-23 20:20 (UTC) - Expand

[identity profile] levtsn.livejournal.com 2015-09-21 05:07 pm (UTC)(link)

А на мотоциклы ставят клапан который меняет режтм глушителя с тихого на громкий
Бошам стоит эту фичу, включение режима неэкологичного, отдать на чиптюнинг

Edited 2015-09-21 17:08 (UTC)

[identity profile] malyj-gorgan.livejournal.com 2015-09-25 07:47 am (UTC)(link)
Если (пусть даже когда) в наших краях появится маньяк, стреляющий из пулевого оружия по мотоциклистам с громким глушителем, я буду с симпатией относиться к тому, что полиция не может его поймать и сочувствовать ему на процессе, если его все э-таки поймают.

[identity profile] dibr.livejournal.com 2015-09-21 05:13 pm (UTC)(link)
1. А как вообще Интел должен делать оптимизацию для АМД? У него вообще говоря может даже не быть необходимой для этого информации - АМД ведь не тупой клон интела, у них "свои фишки" в процессоре.

2. Раз "компилятор выдаёт особо оптимизированный код [...] в зависимости от того, что CPU реально поддерживает", значит речь идёт не о коммерческой разработке ПО (разработчику важно чтобы его программа работала на процессоре заказчика/потребителя, а не на его собственном, а программа, идеально оптимизированная под особенности одного процессора может вообще не заработать на другом похожем), а о ситуации "написали программу, тут же и запустили" (какие-нибудь научные расчёты с самописными программами например). А это во-первых не такое уж частое применение, а во-вторых - пусть АМД выкатят свой компилятор, оптимизированный под АМД, и проблема решится (или станет симметричной).

[identity profile] http://users.livejournal.com/_iga/ 2015-09-21 05:29 pm (UTC)(link)
Речь идёт о проверке в runtime.
На AMD ICC-бинарники не используют SSE, хотя процессор их поддерживает:
https://github.com/jimenezrick/patch-AuthenticAMD
https://en.wikipedia.org/wiki/Intel_C%2B%2B_Compiler#Criticism
the Intel CPU dispatcher does not only check which instruction set is supported by the CPU, it also checks the vendor ID string. If the vendor string is "GenuineIntel" then it uses the optimal code path. If the CPU is not from Intel then, in most cases, it will run the slowest possible version of the code, even if the CPU is fully compatible with a better version.

(no subject)

[identity profile] karpion.livejournal.com - 2015-09-21 17:30 (UTC) - Expand

(no subject)

[identity profile] dibr.livejournal.com - 2015-09-21 17:45 (UTC) - Expand

(no subject)

[identity profile] karpion.livejournal.com - 2015-09-24 01:35 (UTC) - Expand

(no subject)

[identity profile] dibr.livejournal.com - 2015-09-24 05:53 (UTC) - Expand

(no subject)

[identity profile] karpion.livejournal.com - 2015-09-30 18:41 (UTC) - Expand

[identity profile] http://users.livejournal.com/_iga/ 2015-09-21 05:31 pm (UTC)(link)
Это называется greenwashing - декларация следованию "зелёным", "экологическим" стандартам при полной их профанации на деле.

[identity profile] levtsn.livejournal.com 2015-09-21 05:37 pm (UTC)(link)

Выхлоп не содержит холестерина и гмо

(no subject)

(Anonymous) - 2015-09-23 01:25 (UTC) - Expand

[identity profile] karpion.livejournal.com 2015-09-21 05:34 pm (UTC)(link)
Что там Карл Маркс сказал про готовность предпринимателя пойти на что угодно ради прибыли?
Edited 2015-09-21 17:34 (UTC)

[identity profile] levtsn.livejournal.com 2015-09-21 05:37 pm (UTC)(link)

Смерьной казни в европе нет

(no subject)

[identity profile] maxdz.livejournal.com - 2015-09-21 20:03 (UTC) - Expand

(no subject)

[identity profile] karpion.livejournal.com - 2015-09-24 00:54 (UTC) - Expand

[identity profile] iratus.livejournal.com 2015-09-21 06:06 pm (UTC)(link)
Все четко описано:

[identity profile] mastroombroj.livejournal.com 2015-09-21 06:50 pm (UTC)(link)
Ну всё таки: реальные выбросы вредных веществ могли быть в 40 раз выше. А могли быть и в 40 раз ниже. По статье видно что оптимизировались, что в общем-то ничего нового. В английской версии поточнее "would pollute 10 times to 40 times the legal limits, the EPA estimated" но всё равно это estimated всё портит.

Что интересно, это реакция рынка. Выходит что мнение и решение EPA очень серьёзно влияет на компании.

[identity profile] vvs2002.livejournal.com 2015-09-21 07:15 pm (UTC)(link)
За нарушение Clean Air Act довольно неплохие санкции прописаны. До $37K за каждый автомобиль, т.е. VW теоретически может попасть на $18B. Плюс калифорния собственный наезд готовит и шустрые лоеры уже class action lawsuit организуют. И это только в америке. Так что 20% drop не такой уж и большой.

(no subject)

[identity profile] vvs2002.livejournal.com - 2015-09-21 20:02 (UTC) - Expand

(no subject)

[identity profile] chuka-lis.livejournal.com - 2015-09-22 00:39 (UTC) - Expand

[identity profile] yucca.livejournal.com 2015-09-21 07:41 pm (UTC)(link)
А у нас на выезде на хайвей стоит машинка, которая автоматически замеряет выхлопы, и никуда ездить за тестом не надо.

(Anonymous) 2015-09-24 01:56 am (UTC)(link)
А где это, если не секрет?
Еще интересно, что потом с этими результатами делают? (Не пустят на хайвэй? Или просто показывают в качестве развлечения?) :)

(no subject)

[identity profile] yucca.livejournal.com - 2015-09-24 02:05 (UTC) - Expand

[identity profile] silugram.livejournal.com 2015-09-21 08:14 pm (UTC)(link)
Ну вот GCC умеет компилировать под ia32 и ia64. Чем это по сути отличается от более гранулярной оптимизации ? ICC же поди не использует недокументированные фичи, все строго по SDM .. Кто-то хочет поддержать лучше АМД - флаг в руки и пиши бэкэнд с оптимизациями для АМД ..

[identity profile] bopstr.livejournal.com 2015-09-21 11:13 pm (UTC)(link)
А можно пояснить, какой процессор проверяли - тот, для которого компилировали (target) или тот, на котором компилировали (host)?

[identity profile] bopstr.livejournal.com 2015-09-21 11:26 pm (UTC)(link)
Сверху уже объяснили, спасибо!

[identity profile] trurle.livejournal.com 2015-09-21 11:32 pm (UTC)(link)
К сожалению, в нынешнем политическом климате мы не можем доверять EPA.

(Anonymous) 2015-09-24 02:04 am (UTC)(link)
Тоже верно.

Вообще давно замечаю: вропейские и американские системы действуют, конечно, поэлегантнее Онищенко, но когда дело касается крупных инностранных конкурентов отечественным производителям, то несет за версту если не подтасовками, то по крайней мере чудовищными двойными стандартами ...

(no subject)

[identity profile] trurle.livejournal.com - 2015-09-24 03:46 (UTC) - Expand

[identity profile] affidavid.livejournal.com 2015-09-22 02:03 am (UTC)(link)
Тут даже сравнивать трудно, VW обжулил и правительство, и большинство своих потребителей, причем умышленный характер сделанного не сможет отмазать ни один адвокат. Вообще, это уже не первый случай, когда очень солидная европейская компания попадая в США устаивает такие эскапады, что хоть падай.

[identity profile] alxt.livejournal.com 2015-09-22 05:16 am (UTC)(link)
Это не новость.
Давно известно, что низкий расход на "тестовом цикле" и хорошая экология там же достигается искуствено. В это время обыно толком не работает турбина, к примеру.
Кстати, принятие экологических норм без оглядки на возможности провоцирует на мошенничество.
И ещё одно- следование экологическим нормам приводит к тому, что моторы сильно теряют в ресурсе и приемистости (т.е. где раньше 100 л/с хватало, темерь надо 150).

Ну и про это же: http://bmwservice.livejournal.com/186794.html

PS: ещё про "оптимизацию"- например французские машины проектируются так, чтобы получить максимум баллов на крэш-тесте. В результате, к примеру, ремни имеют ограничение по усилию такое, что при 64 км/ч они спасают и аккуратно привозят мникен в подушки, а при 70 км/ч они датут слишком много воли и человек погибнет.
Edited 2015-09-22 05:18 (UTC)

[identity profile] igde.livejournal.com 2015-09-22 07:10 am (UTC)(link)
Напоминает скандал с Sun, когда их компилятор Java распознавал стандартный бенчмарк и выдавал какой-то невероятно оптимизированный код. Причем, сделано было настолько тупо, что ломалось при переименовании переменных.

Что делать, это бизнес.

(Anonymous) 2015-09-22 07:14 am (UTC)(link)
Он всегда будет пытаться как-то объегорить, но в итоге объегоривает сам себя. Рано или поздно махинации вскроются и репутация фирмы пострадает. Если бы у меня была своя фирма, в особенности IT, я строил бы свою рекламную кампанию на лозунгах полной честности и прозрачности, и соблюдал бы пунктуальнейшим образом. Чтобы потом даже если кто-то вбросит информацию, что будто бы у меня не всё чисто, никто бы не поверил.

Про Интел.

[identity profile] sergey kuksenko (from livejournal.com) 2015-09-22 07:30 am (UTC)(link)
Вопрос оптимизации кода под процессор, это даже не вопрос выбора Instruction Set. Это больше вопрос лежащей ниже микроархитектуры.
Например, широко известно, что у всех интеловских процессоров есть некторые проблемы в декодере инструкций, одна из этих проблем размер immediate значения. 8-битные и 32-битные immediate интеловский декодер разбирает хорошо и быстро, а вот с 16-битными у него затык, медленный декодинг и т.д. Поэтому icc насколько можно (скорее всего на 100% - точно не знаю) избегает 16-битных immediate.
У AMD таких проблем в декодинге нет, и 8-16-32-битные immediate декодируются с одинаковой скоростью.
И таких микроархитектурных различий влияющих на производительность между Intel & AMD даже для общего Instruction Set вагон и маленькая тележка, и счет идет не на сотни, а на тысячи.
И естественно Intel не хочет разбираться во всех этих нюансах и генерить хороший код под AMD. И даже не сколько не хочет, а сколько не может. Внутренее устройство микроархитектуры у обоих компаний на 80% информация уровня супер-пурер-топ-сикрет, а по 20% публичной информации много не наделаешь.
Все вышесказанное не отменяет факт, что уж просто SSE без учета микроархитектуры для AMD можно было бы и сделать. Но сразу возникнет вопрос - где и как провести ту грань, что тут делаем, тут не делаем, а тут рыбу заворачиваем.

Re: Про Интел.

[identity profile] krakenrus.livejournal.com 2015-09-22 10:05 am (UTC)(link)
> Но сразу возникнет вопрос - где и как провести ту грань
Это смотря кто проводит.
Если тот, кто решает, была ли подобная "отмена оптимизации для AMD" правомерна, то наверное лучше всего по-старинке - вызвать разработчиков, которые и расскажут под присягой, зачем так сделали. Потому что сложно технически или потому, что начальник приказал. :)

Re: Про Интел.

[identity profile] sergey kuksenko - 2015-09-22 10:14 (UTC) - Expand

Off

[identity profile] niktoinikak.livejournal.com 2015-09-22 02:10 pm (UTC)(link)
chesspro.ru/guestnew/lookmessage/?id=16-468-198428

Эту диаграму можно в тему о философии. Ход Вэя(точнее, получающиеся варианты) проявляет мировую гармонию, возникающую из ничего.

P. S.
Я позволил себе этот офф, зная о Вашем интересе к шахматам
Edited 2015-09-22 14:11 (UTC)

Re: Off

[identity profile] avva.livejournal.com 2015-09-22 03:12 pm (UTC)(link)
Красиво, да. Спасибо.

Re: Off

(Anonymous) - 2015-09-24 02:22 (UTC) - Expand

Re: Off

[identity profile] niktoinikak.livejournal.com - 2015-09-24 02:25 (UTC) - Expand

Re: Off

(Anonymous) - 2015-09-24 02:35 (UTC) - Expand

Re: Off

(Anonymous) - 2015-09-24 02:36 (UTC) - Expand

Re: Off

[identity profile] niktoinikak.livejournal.com - 2015-09-24 02:29 (UTC) - Expand

Page 1 of 2