Какие компиляторы максимально оптимизирующие для С и С# вы знаете. Хочу провести собственный эксперимент: одна и таже программа на трех языках, буду оценивать размер PE, скорость выполнения, посмотрю под дизассемблером сишный код (действительно ли компилятор сильно оптимизирует его?). В принципе можно и С++, но он меня как-то не оч привлекает. Цель: добиться удовлетвореня, осознав, что асм круче всех =).
mix_mix Смысл? Если тебе нравится АСМ, то стоит ли искать замену? Если ищешь, то значит не так его ценишь и любишь! Я вот давно осознал: "На войне все средства хороши" А война у нас одна: - незнания и безденежье
mix_mix Я знаю и использую только "Microsoft C/C++ Compiler V 14.00.50727.42", и только в плане C++. Нормальный компилятор, но есстно человека пересилить не может в плане оптимизации, и не один компилятор не может. Если хочешь взяться за реально сложную задачу - попытайся обставить компилятор для Itanium 2, или другого RISC-проца.
Степень оптимизации зависит от сложности функции, количества локальных переменных, даже от того, как ты описываешь локальные переменные - заранее или по ходу дела. Один из самых оптимизирующих - это упомянутый Microsoft C/C++ Compiler. Ватком тоже неплохо оптимизирует.
mix_mix До недавнего времени пользовался Microsoft C/C++ Compiler, но попробовал Intel compiler и заметил разницу не в размере, а в скорости.
Ясно, спасибо всем. EvilsInterrupt Мне просто хочется посмотреть насколько сильно добивается оптимизации С компилер и узнать какие тормаза обитают в мире C#. А асм ни на какой си не променяю, хоть я пока и оптимизирую хреново =)
так правды не добъешся. кто чем пользуется то и хвалит. возьми несколько разных (популярных). вот мне интересно ктоже из нас оптимизирует асм код ? а именно: четность, границы, многоконвеерное прохождение без перезагрузок кеша и предсказателя команд... но языкам высокого уровня никакая оптимизация не поможет. ненужный код всеравно останется, хоть и оптимизированый
mix_mix, Вы Adobe Photoshop и Microsoft Word не сравнивали? Asterix, есть. Но практика показывает что на 5-15% компилятор от MS быстрее.
А существуют ли компиляторы с C# в нативный код, в смысле без среды типа .net, mono? Да. ThiInstall. Только это по большому счету это не законно (с точки зрание M$)
TheBits Сравнивал, PhotoShop лучше, он от Adobe, Word от MS =) Просто я хочу сделать некие выводы в виде "О, компилятор Си действительно оптимизирует код. Круто! Так, а это, что за хрень? Я такого не писал!" и "Так, на асме сортировка массива осуществяется за 2 секунды на C#... Так, нефига себе! 15 секунд!" Вот это я хочу увидеть своими глазами. apple Прикольно, только размер PE, наверное, намного увеличивается. Там же, небось, все библиотеки (System.<...>) компонуются.
Имхо, такого не будет скорее всего, а в зависимости от того, что и как сортируем, так на шарпе еще и пошустрее может выйти А вообще, это, конечно, все равно, что сравнивать трактора с яблоками.
mix_mix глянь сюда. зы. очень рекомендую посмотреть на benchmark chameneos. там ещё замучаешься обгонять асмом ghc. Правда если обгонишь, то поймёшь, что все эти сравнения языков -- туфта полная. Или, как выражается masquer -- сравнение тракторов с яблоками.
apple Правильно ли я понял что запрещена сама разработка компилятора C# кем либо кроме M$? Не только использование готовых нефриварных компиляторов, но уже само намерение создать должно быть лицензировано? Но mono свободно распространяемая, значит моновцы купили лицензию на право разработки? Или незаконен только нативный код, без .net? Тогда пора брать со штатников деньги за право на разработку космических ракет т.к. принцип использования реактивной тяги в безвоздушном пространстве впервые предложен в нашей конторе, в смысле отечестве. Ведь сам язык без реализации- это тоже только принцип. Создал прецедент- полезай в кузов, а как же.