LINUX.ORG.RU
решено ФорумTalks

[opennet]Разработчики Internet Explorer 9 уличены в накрутке результа теста SunSpider.

 


0

1

Собственно сабж: http://www.opennet.ru/openforum/vsluhforumID3/72642.html#1 Кто тут говорил «IE wins»?) Мелкософт в своём репертуаре. *Реквестирую срач.

★★

Последнее исправление: Dorif (всего исправлений: 1)

Сразу вантузоиды нашли оправдание: мол, в тесте много «мертвого кода», которых вообще нафига выполнять.

FakeLinux
()
Ответ на: комментарий от FakeLinux

И вместо этого лучше сразу выдавать «зашаблоненные» результаты.))) Класть нам на реаьные приложения! Нам нужно прохождение теста!

Dorif ★★
() автор топика
Ответ на: комментарий от Dorif

Я ни разу не видел, чтобы Майкрософт честно признавалась в своих фейлах. Тут так же. И да, эта новость так органично сочетается с взбросом Прянишникова.

Тут я подумал, а что если так же поступить с Хромом? Наверное, дело пойдет на десятки ms в SunSpider.

FakeLinux
()

>единственной задачей которой в данный момент является ускорение прохождения теста производительности SunSpider

конечно, в венде все таким путем сделано

derlafff ★★★★★
()

Рекомендую неЪ сходить по этой ссылке: http://digitizor.com/2010/11/17/internet-explorer-9-caught-cheating-in-sunspi...

Похоже клоуны из MS встроили в лексический анализатор хаки, которые просто выбрасывают некоторые функции из кода бенчмарка. Логично: отсутствующий код исполняется за нулевое время. :) После тривиальных (и не влияющих на производительность) изменений в коде этих функций хаки перестают срабатывать. :D

Relan ★★★★★
()
Ответ на: комментарий от neocrust

Не, это не выход. Баним в одном- они другим займутся. Расстрелы, исключительно массовые расстрелы. Не хватит патронов- ОМП форева.

Dorif ★★
() автор топика

Судя по тексту новости, движок заменяет часто используемые патерны на куски нативного кода.
И чё?

wxw ★★★★★
()

Зря гоните на микрософт

Никакой накрутки в этом нет.

Dead code elimination - вполне нормальная разновидность оптимизации. Например, эту оптимизацию проводит GCC. Смысл в ней примерно такой же, как в раскручивании циклов: избавить исходные коды программы от низкоуровневых хаков, чтобы программисты могли делать акцент на читабельности.

Если SunSpider написан в предположении, что dead code elimination проводиться не будет, то это говорит лишь о некомпетентности авторов SunSpider.

Manhunt ★★★★★
()
Ответ на: комментарий от wxw

То, что он их не заменяет. Он сразу выводит результаты, не выполняя ни одной операции. Проще говоря: МС наняла команду быдлокодеров, которые воспроизводили все возможные результаты прохождения теста с разными входными параметрами. выходные данные записывали в шаблон и при прохождении этого теста тупо выдаются данные из шаблона, без выполнения каких- либо операций.

Dorif ★★
() автор топика
Ответ на: Зря гоните на микрософт от Manhunt

Ладно бы, если бы это было реализовано для всех, но Мс сделала это только для прохождения теста. И то не в виде полноценного Dead code elimination, а в виде выдачи заранее заготовленных ответов в зависимости от входных данных. МС- на мясо!

Dorif ★★
() автор топика
Ответ на: комментарий от derlafff

> однако, они это сделали не вообще, а именно для SunSpider'a

Глупо реализовывать эту оптимизацию с прицелом на один-единственный тест. Скорее всего, они ее на этом тесте отлаживали (и она стала на нем успешно работать), но остались баги из-за которых она иногда не срабатывает на другом коде. Отладят еще.

Manhunt ★★★★★
()
Ответ на: комментарий от Dorif

Дополнение: справочные таблицы шпорами не считать.)))

Dorif ★★
() автор топика
Ответ на: комментарий от FakeLinux

> Тогда с какого перепугу пару строчек, которые ничего не делают, в 20 раз снижают скорость теста?

Баг, из-за которого оптимизация не срабатывает. Очевидно же.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

Баги, из- за которых оптимизатор ВООБЩЕ не способен на НЕ ТЕСТОВОМ коде работать? Это уже не баги... Это уже враньё про оптимизацию. И да: прохождение теста делает же рекламу, так что нацелено не столько на тест, сколько на рекламу. А здесь все средства хороши.

Dorif ★★
() автор топика
Ответ на: комментарий от Manhunt

однако, они эту глупость сделали. И вероятность того, что эта вещь будет отлажена стремится к нулю, ибо просто нечего отлаживать.

derlafff ★★★★★
()
Ответ на: комментарий от Dorif

> Ладно бы, если бы это было реализовано для всех

С вероятностью 99% они реализовывали это именно «для всех».

Мс сделала это только для прохождения теста


Зачем им это?! Они и так свой IE миллиардам хомячков втиснут. И судить о качестве хомячки будут не по тесту, а по тому, хорошо ли работает очередной вконтактик.

Брось, они на этих тестах просто отлажитваются/оптимизируются. Так же, как icc и gcc отлаживают/оптимизируют на Spec CPU. Вот и получилось, что в тесте оптимизацию уже срабатывает, а в real life - пока еще выскакивают баги.

И то не в виде полноценного Dead code elimination, а в виде выдачи заранее заготовленных ответов в зависимости от входных данных.


Пруф?

Manhunt ★★★★★
()
Ответ на: комментарий от KPSS

Толсто! Хром- не чистый вебкит юзает, если это в его огород камушек. А остальные юзают те же функции, что и в стандартном, стандартизированном вебките.

Dorif ★★
() автор топика
Ответ на: комментарий от FakeLinux

Опыт.

Опера и webkit тоже нарушают стандарты. Быстрая загрузка с медленного интернета там не просто так давалась. Для фаерфокса тоже есть такое расширение, только в отличии от недобраузеров в нем честно написано про нарушения.

KPSS
()

Олимпиадник по информатике рассказывал про «метод Лопатина». На время выполнения олимпиадных задач ставятся строгие ограничения в 1-2 с. Чтобы обойти их без напрягов в некоторых задачах, один парень посчитал необходимые значения долгим и тупым алгоритмом, после чего из готовых результатов соорудил огромный switch {}. Естественно после этого программа стала работать микросекунды :) Разработчики осла видимо поняли всю перспективность этого пути.

jcd ★★★★★
()
Ответ на: комментарий от Manhunt

>Зачем им это?! Они и так свой IE миллиардам хомячков втиснут.

да они даже сверхшикарную висту не смогли втюхать хомячкам

И судить о качестве хомячки будут не по тесту, а по тому, хорошо ли работает очередной вконтактик.


а если кнопочка «Обновить» сдвинется на 5 пикселей влево, они переходить на ie9 не будут, ибо не удобно

Пруф?


1) http://www.tomshardware.com/reviews/opera-10.60-internet-explorer-9-safari-5,...

2) http://digitizor.com/2010/11/17/internet-explorer-9-caught-cheating-in-sunspi...

derlafff ★★★★★
()
Ответ на: комментарий от Manhunt

Пруф? А не срабатывание оптимизации при добавлении return? Глупо тестировать оптимизатор только на одном наборе входных данных, если твоя цель не реклама. любой код должен быть оттестирован на множестве входных данных и не идти в апстрим, пока не заработает полноценно. Поэтому наводит на мысли.

Dorif ★★
() автор топика
Ответ на: комментарий от Manhunt

> Зачем им это?!

Чтобы прекратить снижение доли IE на рынке браузеров

Брось, они на этих тестах просто отлажитваются/оптимизируются.

Да хоть до посинения. Орать-то зачем?

FakeLinux
()
Ответ на: комментарий от Manhunt

по первой ссылке, IE побеждает только тест SunSpider (из 4), в остальных находится на последнем месте

про вторую ссылку тебе уже разжевали:

А не срабатывание оптимизации при добавлении return? Глупо тестировать оптимизатор только на одном наборе входных данных, если твоя цель не реклама. любой код должен быть оттестирован на множестве входных данных и не идти в апстрим, пока не заработает полноценно. Поэтому наводит на мысли.

derlafff ★★★★★
()
Ответ на: комментарий от Dorif

> А не срабатывание оптимизации при добавлении return?

Просто баг.

Глупо тестировать оптимизатор только на одном наборе входных данных, если твоя цель не реклама.


Для начала, его надо оттестировать хоть на чем-то. Бенчмарки для этого удобны, так как можно сравниваться с результатами других броузеров и таким с легкостью образом замечать совсем уж грубые косяки.

любой код должен быть оттестирован на множестве входных данных и не идти в апстрим, пока не заработает полноценно


Давно эта тестовая сборка IE9 стала именоваться «апстримом»? А если у меня дебиан анстейбл падает - то это тоже «апстрим»?

Manhunt ★★★★★
()
Ответ на: комментарий от simplex

На олимпиадах не всегда есть доступ к тестовым данным.

Я вообще ни разу не видел олипиад, где бы давали доступ ко всем тестовым входным данным. Но по условиям задачи, множество разных входных данных может быть небольшим, и в этом случае может быть смысл в расчёте всех возможных вариантов заранее.

Deleted
()
Ответ на: комментарий от derlafff

> по первой ссылке, IE побеждает только тест SunSpider (из 4), в остальных находится на последнем месте

Причем тут dead code elimination? У тебя логика по типу «в огороде бузина, а в киеве - дядька».

про вторую ссылку тебе уже разжевали


Bullshit.

Manhunt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.