Да что вы говорите? Очень интересно. А Вы хорошо знакомы с алгоритмами профессора Донгарры и соответствующими реализациями его алгоритмов в пакете Intel MKL?
Дорогой тов. Dongara, конечно же не знаком. Я вообще мало знаком с практическими реализациями тех или иных людей, меня всегда учили работать самостоятельно (что, конечно, не всегда хорошо) и поэтому делаю конкурс в том числе и для того, чтобы кто-нибудь мне такую программу тоже прислал. Маловероятно, но возможно, что она окажется быстрее всех. Я буду очень рад, если кто-то из специалистов по линейной алгебре достанет (или напишет) хорошую реализацию. Но пока этого не происходит. Вместо предложений попробовать то или это лучше сделайте это сами - получите объективную оценку тому, чего стоит такая реализация. По крайней мере, в других задачах на своем опыты убедился, что всякие реализации профессора Такого-То проигрывают по очень простой причине - из-за попытки написать алгоритм для универсального случая, когда случай вполне конкретный. При этом, конечно, это не уменьшает заслуги Профессора, просто задачи немного разные.
Цитата:
Я не хотел Вас обидеть или упрекнуть в нечестности. Моя мысль следующая.
На сегодня есть последние версии трансляторов с С и Фортрана (с очень хорошими опциями оптимизации выполняемого кода) от ряда известных компаний (Напр. от Intel 11-ой версии). Стоят они хороших денег, которых у многих здесь нет. Таким образом средний программист с деньгами может оказаться (по вашим критериям) лучше чем умелый, но бедный!
Поэтому условия соревнования должны иметь единый критерий. Я не выговариваю себе осоых условий и денег мне не надо, но я бы принял участие только на равноправных условиях (хотя готов и на Radeon-5ХXX серии, под OPEN CL посоревноваться).
Нет, все в равных условиях. Смотрите, если говорить о том, что у всех разная возможность доступа к компиляторам, то также можно сказать - у всех разные возможности доступа к научной литературе (например, у меня есть оригинал статьи Штрассена, а у вас (ну или у многих), скорее всего - нет). Далее, у всех разное воспитание в университете, поэтому у одного знаний больше, а у другого - меньше. У одного IQ 90, а у другого 180 (хотя это не показатель). Понимаете? Точно так же и с инструментами. Компилятор Intel можно отыскать при желании. Например, в университете у нас есть лицензионная версия. У кого нет, наверняка есть знакомый-программист из какой-нибудь фирмы и т. д. Каждый человек находится в своих условиях, а если хотите чтобы все было полностью одинаково - то это выглядит несколько утопично. Да и кроме того, программист, который съел собаку на оптимизации (не я, конечно) должен иметь этот компилятор под рукой всегда. Конечно, это ИМХО, но согласитесь, я привожу разумные доводы. Кстати, обидеть меня не получится : ) так что не извиняйтесь вы так зря : )
Цитата:
Хороший программист достанет хороший транслятор бесплатно. Но дело не в этом: мало для кого эта задача подъемная, в том числе и для автора этой темы. Хороший алгоритм должен содержать не одну тысячу строк ассемблерного кода.
Я уже отвечал на этот вопрос про ассемблер в своем FAQ, вопрос номер 3.
Цитата:
Чем плоха оптимизация в Sun Studio, который распространяется бесплатно?
Понятия не имею что это такое. Был бы вам признателен, если бы вы поучаствовали как раз с этой реализацией. Если знакомы с ней, это отнимет у вас минут 10 да? Зато вы получите полную оценку этой реализации на практике.
Цитата:
Шаблоны не дают оверхеда по времени (при адекватном использовании).
Ключевое слово - "адекватном". Где гарантия, что в uBLAS использование адекватное? Вот мне как раз один товарищ еще прислала программу gotoBLAS2 (понятия не имею о том, что это), но работает все равно не слишком шустро... проигрывает реализации "в лоб", написанной кем-то на Delphi.
Цитата:
... а это что прикол?:
"8.Максимальный порядок матрицы в тесте n = 5000"
Вы хоть представляете сколько лет такие монстры должны перемножаться?
А тут читаем:
"Время работы программы на каждом тесте не должно превышать 900 секунд."
Да ... смешно.
Тов. Андрей АK. Прежде чем смеяться, надо подумать. Во-первых, если в таблице рейтинга уже есть реальные записи с указанным временем работы программ, то вы что-то поняли неправильно (да, я видел, что вы ошиблись, спутав умножение и определитель, ничего страшного). Во-вторых, даже если бы я попросил считать определитель матрицы 5000 на 5000, то это примерно 30 секунд счета.
Например, Maple 13 решает эту задачу примерно за такое время, ответ типа 600 в степени N - это ерунда. У меня есть задачи, где надо считать харполином для матрицы размером в несколько тысяч, и числа в ней по 15 000 знаков каждое. Вот это уже я понимаю - задача. Кстати, это была реальная задача, которая возникла в процессе моих исследований.