Как сообщили участники проекта LibreOffice, в вышедшей недавно версии пакета 4.2 проведена крупнейшая рефакторизация кода Calc за все время. Переделка была призвана прежде всего повысить скорость обработки больших наборов данных, особенно при вычислении значений ячеек и импорте обширных и сложных таблиц .xslx.
Как подчеркнул Итало Виньоли, участник проекта LibreOffice, модернизация была продиктована назревшей необходимостью — поскольку пакет родился в 1990-х, его архитектура не отвечала современным требованиям. «LibreOffice отчаянно нуждался в обновлении, особенно Calc, так как электронным таблицам нужно больше вычислительной мощности, чем другим компонентам, — добавил Виньоли. — Теперь пользователи больших таблиц почувствуют, что Calc работает значительно быстрее. Кроме того, в приложении появились новые, улучшенные средства наглядного представления данных».
По словам Виньоли, чтобы улучшить быстродействие Calc, в приложении задействовали технологии, используемые в видеоиграх. В частности, разработан новый интерпретатор формул, обеспечивающий параллельное вычисление значений формульных ячеек с помощью не только центрального процессора, традиционно применявшегося для этой задачи, но и графического. В работе с GPU применяется язык OpenCL, позволяющий использовать вычислительные возможности видеочипов неграфическим приложениям.
«Обычно, когда вы производите расчеты в электронной таблице, графический процессор отдыхает, а центральный работает, — отметил Виньоли. — Вместе же им проще обрабатывать очень большие срезы данных».
Как сообщают участники проекта LibreOffice, новый интерпретатор формул лучше всего работает на чипах ахитектуры Heterogeneous System Architecture, например, на новом «ускоренном процессорном модуле» AMD Kaveri.
Помимо Calc в LibreOffice улучшена поддержка формата Microsoft OOXML — в частности файлов .docx, а также .rtf, плюс добавлены фильтры для импорта документов Abiword и презентаций Apple Keynote.
Кроме того, LibreOffice 4.2 поддерживает Impress Remote, приложение для iOS, превращающее iPhone или iPad в пульт дистанционного управления презентациями. Сейчас оно ожидает утверждения Apple для приема в App Store, а для Android аналогичное уже было доступно раньше.