Представлен Halide, новый язык программирования для обработки изображений
Исследователи из Массачусетского технологического института представили новый язык программирования Halide, специально разработанный для упрощения разработки приложений, обрабатывающих графические изображения. Halide является предметно ориентированным языком, предназначенным для достижения максимальной эффективности при обработке основных типов графических файлов, например в таких типовых графических операциях, как обработка raw-изображений, фильтрация Лапласа, сегментация изображения и т.п.
Технически - это язык прототипов на базе C++, который допускает своё использование в двух режимах: выполнение встроенных в приложение функций на языке Halide через использование JIT-компиляции; либо компиляция в отдельный объектный файл, который может впоследствии быть подключен в стороннюю программу, например посредством добавления простейшего заголовка-ссылки на этот файл при компиляции.
Исследователи говорят, что легкость чтения и восприятия более высокоуровневого языка Halide не единственное его отличие от обычных языков программирования. Что более важно, Halide также автоматизирует оптимизацию машинного кода под ресурсоёмкие графические операции, на что в противном случае потребовались бы часы весьма непростой работы, и даже в случае полной ручной оптимизации вряд ли результат был бы лучше по сравнению с Halide. Разработчики языка переписали на Halide некоторые общедоступные графические библиотеки и обнаружили, что версия на языке Halide, как правило, в три раза меньше по размеру и в 6 раз быстрее по производительности. Сами исследователи объясняют такой скачек производительности активным использованием самых современных технических возможностей, главным образом использованием эффективного распараллеливания процессов.
Проект написан на языке C++ с использованием элементов нового стандарта C++11, поэтому для его компиляции требуется как минимум gcc 4.6. На данный момент Halide адаптирован для следующих платформ: x86-64/SSE, ARM v7/NEON и CUDA. Язык поддерживает блоки SIMD, многоядерные процессоры, сложно-иерархическую память. Поддерживается сборка для Mac OS X и Linux (Ubuntu 12.04). Исходные тексты проекта открыты под лицензией MIT.
Подробнее: http://citforum.ru/news/28847/
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
- 2024-07-26 » Интеграция с СДЕК
- 2024-07-26 » Интеграция с Битрикс-24
- 2024-07-26 » Интеграция с Travelline
- 2024-07-26 » Интеграция с Iiko
- 2024-07-26 » Интеграция с Delivery Club
- 2024-07-26 » Интеграция с CRM
- 2024-07-26 » Интеграция с 1C-Бухгалтерия
- 2024-07-24 » Что такое сторителлинг: техники и примеры
- 2024-07-17 » Ошибка 404: что это такое и как ее использовать для бизнеса
- 2024-07-03 » Размещайте прайс-листы на FarPost.ru и продавайте товары быстро и выгодно
- 2024-07-01 » Профилирование кода в PHP
- 2024-06-28 » Изучаем ABC/XYZ-анализ: что это такое и какие решения с помощью него принимают
- 2024-06-17 » Зачем вам знать потребности клиента
- 2024-06-11 » Что нового в работе Яндекс Метрики: полный обзор обновления
- 2024-06-11 » Поведенческие факторы ранжирования в Яндексе
- 2024-06-11 » Скорость загрузки сайта: почему это важно и как влияет на ранжирование
Всегда храни верность своему начальнику - следующий, может быть еще хуже... |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.