Страница 1 из 1

Алгоритмы и код для сравнения эффективности компиляторов

Добавлено: 25 дек 2007, 19:14
Victor Gr.
Добрый день!

Сотворил сегодня "Hello World" на языке D, используя gdc (GNU D Compiler).

И вот решил заняться неким fun-ом: хочется провести некоторые замеры производительности кода, созданного gcc и gdc.

Так же в рамках данного, овладеть некими навыками написания этого кода на D.

Но вот по какому коду проводить сравнение? Он должен быть максимально похожим в C и в D.

Некие наброски:

1. Работа с памятью: чтение и запись.
2. Математика (упрощение мат.выражений).
3. Условные переходы и циклы.
4. Вызов функций и передача аргументов.

Это набросок что вообще сравнивать в компиляторе.

На самом деле, хочется узнать, насколько текущая реализация D эффективна.

Кто подскажет на что ещё обратить внимание, что сравнивать в компиляторах и какой код лучше использовать в каждом случае?

Попутно, вопрос: а чем замерять результаты? Достаточно ли будет утилиты time, либо нужно что-нибудь более высокоточное?

Добавлено: 25 дек 2007, 22:54
sm
Но вот по какому коду проводить сравнение? Он должен быть максимально похожим в C и в D.
http://shootout.alioth.debian.org/gp4sa ... &lang2=gcc
По этой ссылке можно набрать реализаций алгоритмов на разных языках, а заодно и посмотреть сравнение (тут правда Д не гнутый).

Добавлено: 26 дек 2007, 01:10
Victor Gr.
sm, а, ну раз уже всё посчитали до меня, то чего тогда этим заниматься? :)

Может быть, потестирую gdc-4.1. О результатах доложу.

Добавлено: 26 дек 2007, 02:59
michael
Попробуй ещё какую-нибудь простенькую, но реалистичную задачку. Чтобы там сразу несколько твоих пунктов было.

Добавлено: 26 дек 2007, 21:17
bobrik
Напиши ОС, к примеру