Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Разгадывайте увлекательные головоломки «три в ряд» и отправляйтесь в захватывающее приключение! Преодолевайте яркие и насыщенные уровни, чтобы раскрыть новую главу доброй и современной истории о мышонке и его верных друзьях!

Мышонок Шон

Казуальные, Три в ряд, Головоломки

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
6040
Coinn
IT-юмор

Почему?⁠⁠

3 года назад
Почему?

Коллеги скинули мемчик в рабочем чате. Баянометр молчал.

IT юмор Юмор Компилятор Программирование Картинка с текстом
454
3
CatMaybe
CatMaybe

Спасибо компилятору⁠⁠

4 года назад

Решал задачи по программированию. Написал код, отладил. Прогнал пару примеров из условия задачи, работает. Отправляю на проверку код, „жюри“ не приняли. Смотрю на ошибку, а Python просто медленный для тех рамок. Ограничение в одну секунду, а код выполняется в 1.2 секунды. ಠ_ಠ

Спасибо компилятору
Показать полностью 1
[моё] Python Программирование Компилятор Кот
17
104
tproger.official
tproger.official
Типичный программист

Visual Srudio Кот⁠⁠

4 года назад
Visual Srudio Кот
IT IT юмор Компилятор Программирование IDE Вы продаете рыбов?
12
1920
Bugagashechko
Bugagashechko
IT-юмор

Дебаг Форест, дебаг⁠⁠

4 года назад
Дебаг Форест, дебаг
IT юмор Языки программирования Компилятор Форрест Гамп Картинка с текстом Мат
32
1478
PyleDiser
PyleDiser
IT-юмор

Компилятор⁠⁠

4 года назад

Компилятор

Показать полностью 2
Юмор IT юмор IT Компилятор Кот Функция Картинка с текстом
42
617
PyleDiser
PyleDiser
IT-юмор

В поисках⁠⁠

4 года назад

Я:

Мужчина

Женщина

Компилятор

Ищу:

Мужчину

Женщину

'}' в строке 69

В поисках
IT IT юмор Компилятор X (Twitter) Скриншот Юмор
20
885
f3681

Ответ на пост «А когда то и 32 Кбайта считалось роскошью)»⁠⁠1

4 года назад

Прочитал пост и вспомнил вот такую историю про Фортран — и про времена, когда деревья были выше, трава зеленее, а программисты всерьёз заботились об оптимизациях...


***


Как-то раз в бородатом детстве в 1993-ом кажется году мы решили писать компьютерную игрушку и для этого решили сравнить производительность трёх языков, на которых умели писать. Borland C++ 4.0, Turbo Pascal 7.0 и Fortran 77. Тестировались две нужные нам задачи — Умножение вектора на матрицу и отрисовывание треугольника стандартными инструментами в режиме EGA.


Довольно быстро выяснилось, что рисование у C и Pascal шло с одинаковой скоростью, потому как использовало одну и ту же библиотеку egavga.bgi, Расчёты на С были примерно вдвое быстрее, за счёт разнообразных проверок на переполнение, которые в Паскале по умолчанию были включены, а в C по умолчанию выключены. Но это можно было исправить директивами компилятора. А вот с фортраном началось самое интересное:


Первый замер был про умножение на матрицу. Когда фортран показал результат в 10000 раз быстрее у нас закралось подозрение. Сначала мы пытались найти ошибку, но потом сдались. Дизасемблирование показало, что отимизатор смекнул, что результаты вычислений внутри цикла не используются и посчитал умножения и суммирования только один раз, для значения переменной цикла в последнем цикле.


Тогда вместо того чтобы внутри цикла делать просто умножения и сложения мы заставили его ещё и суммировать переменную цикла. Когда фортран показал результаты в 10000 раз быстрее, мы сразу полезли в дизасемблер и к величайшему нашему удивлению обнаружили, что фортран суммирование переменной цикла в цикле успешно заменил на формулу подсчёта арифметической прогрессии. Сказать, что мы были в шоке — ничего не сказать.


Следующие пол часа ушли на подбор такой формулы для замеров, в которой оптимизатор фортрана ничего не смог бы упростить. Задачка оказалось нетривиальной, потому что на глазах у удивлённых школьников фортран выносил общий множитель за скобку, заранее умножал друг на друга константы и делал ещё несколько не менее интеллектуальных операций потрясая наше воображение. Когда мы таки смогли его обмануть выяснилось, что по скорости он от C по скорости не отличается.


Когда мы заставили фортран нарисовать закрашенный треугольник 256 цветами, и он показал результаты ровно в 16 раз лучше egavga.bgi мы уже даже не удивились. В EGA было всего 16 цветов. Рисование цветом 17 было то же самое, что рисование цветом 1. Уж не знаю как Fortran77 дозрел до этой идеи, но он треугольник перерисовал только 16 раз разными цветами, и на этом покинул цикл. Пришлось каждый следующий треугольник рисовать сдвигая одну из вершин на 1 пиксель. Результаты оказались примерно такие же как у конкурентов.


В общем по результатам всей этой истории у меня осталось два выводы:

1) Нет большой разницы на каком из нормальных компиляторов писать, если не лениться.

2) Оптимизатор в фортране написан сошедшими на землю богами.


***


Источник: комментарий на Хабрахабре от 2015 года (https://m.habr.com/en/post/261201/comments/#comment_8480183). История, конечно, — «не баян, а классика», но на Пикабу такого поста не было, я проверил :)

Показать полностью
Программирование История Память Операционная система Компилятор Ответ на пост Текст
64
2931
O..O
O..O

А когда то и 32 Кбайта считалось роскошью)⁠⁠1

4 года назад
А когда то и 32 Кбайта считалось роскошью)

А также загрузка ОС в течении нескольких часов)

Программирование История Память Операционная система Компилятор
237
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии