LINUX.ORG.RU

В LibreOffice Calc появилась поддержка OpenCL для ускорения статистических и финансовых функций

 ,


0

1

Более 50 коммитов, касающихся поддержки OpenCL в Calc, отправлены в git-репозиторий проекта LibreOffice. Поддержка OpenCL позволяет вынести ресурсоемкие вычисления в ряде функций с CPU на GPU, тем самым ускорив обработку сложных или объемных электронных таблиц. Среди функций, получивших аппаратное ускорение, доминируют функции, связанные с финансовым анализом данных, и статистические функции.

  • PPMT - расчет основного платежа аннуитетного кредита.
  • FISHER/FISHERINV - Fisher transform.
  • GAMMA, GAMMALN - гамма-распределение.
  • ACCRINTM - накопленный доход по ценным бумагам с выплатой процента при погашении.
  • И многие другие функции.

Ожидается, что эти изменения войдут в LibreOffice 4.2, выход которого намечен на февраль 2014 года.

>>> Подробности

★★★★★

Проверено: mono ()

PPMT - расчет основного платежа аннуитетного кредита.

это настолько ресурсоемко? фигасе

Kompilainenn ★★★★★ ()
Ответ на: комментарий от Kompilainenn

Есть мнение, что какой-то банк хранит все свои данные в одном .xls .ods файле. И всё тормозило. Либо очень жесткий just for fun.

shahid ★★★★★ ()

круто, хотя мне вряд ли это понадобится.....

cetjs2 ★★★★★ ()

Это же просто задорнов. Ускорение при помощи OpenCL либрекалка, который до сих пор не может осилить даже нарисовать график на основе, скажем, 100000 ячеек. Гамма-функция, например — это тривиальнейшея же вещь, Numerical Recipes пишет, что для ее расчета нужно всего-лишь 25 арифметических операций и два логарифма. Как для этого может понадобиться OpenCL?

trycatch ★★★ ()
Ответ на: комментарий от shahid

банк хранит все свои данные в одном .xls .ods файле

бгагага, моя спать ночь хорошо теперь

Kompilainenn ★★★★★ ()
Ответ на: комментарий от shahid

Есть мнение, что так оно и есть, но вот только те места, про которые я в курсе — используют xls (к моему сожалению). Так что не поможет им OpenCL...

ivanlex ★★★★ ()
Ответ на: комментарий от trycatch

и два логарифма

Вооот, эти два логарифма можно просто распаралелить, ибо они независимы, а OpenCL — это ведь не только GPU, но и CPU, и даже иногда FPGA.

shahid ★★★★★ ()
Ответ на: комментарий от shahid

Это не легче, чем в процессорах с SIMD (алсо, гарантирует ли OpenCL точность математических функций, либо это оставлено на откуп имплементации?). Да и дело не в этом. Ну пусть даже 300 тактов уйдет на вычисление гамма-функции — это 10 миллионов вычислений в секунду на одном ядре современного процессора. 10 миллионов ячеек находятся далеко за пределами того, на что способен в данный момент либреофис.

trycatch ★★★ ()
Ответ на: комментарий от trycatch

О, нашел. http://devgurus.amd.com/thread/159969#1285306 :

AMD GPU's don't have true/native double precision transcendental ( sin, cos, log, tan, ... ) functions. Native double functions just return single precision result converted to double precision ( with lowest bits 0 ). To improve accuracy GPU must use basic operations. Achieving full accuracy ( error <=0.5 ulp ) takes too much instructions and isn't practical. That's why OpenCL specifies quite huge error for transcendental functions ( >2-3 ulp ).

Also native single precision transcendental functions on AMD's GPU can return results with quite huge error ( but it depends on a function ).

Usually CPU gives much lower error for those functions ( Although if I remember correctly it isn't always fully accurate so in some cases error is >0.5 ulp ).

trycatch ★★★ ()

Сортировка файла на 500 тысяч строк тормозит в любом офисе. Видимо, кому-то лень искать нормальные инструменты для работы с такими таблицами, поэтому офисы и ускоряют.

abraziv_whiskey ★★★★★ ()

Да уж... Нормальную поддержку мелкгомягкого xls они запилить не могут, а вот OpenCL нужно. Модно, стильно, молодежно ведь.

Meyer ★★★ ()
Ответ на: комментарий от Meyer

Нормальную поддержку мелкгомягкого xls они запилить не могут, а вот OpenCL нужно.

ну ты сравнил говно с конфетой!

Kompilainenn ★★★★★ ()

Чем Calc лучше Gnumeric и org-mode?

NaN ()
Ответ на: комментарий от Kompilainenn

Ну, если я ничего не пропустил в последней паре релизов, то читать из XLS-а может, а интерфейса для создания своих — нету.

С макро начались некоторые подвижки — Анатолий Асвиян присылает в лист патчи расширяющие поддержку питона. Использовать чего-то понаделанное в VBA для XL это не поможет, но может хоть что-то питонье получится обтяпывать.

frob ★★★★★ ()
Ответ на: комментарий от Meyer

нормальную поддержку xls мелкософт уже 20 лет запилить не может.

Slackware_user ★★★★★ ()

Добавим ненужное, починим несломанное.

Oleaster ★★★ ()

Секретарши будут рады!

jekader ★★★★★ ()

Толку от OpenCL, если он, мягко говоря, любит ужасно тормозит на отображении более-менее наполненных таблиц.

AlexVR ★★★★★ ()
Ответ на: комментарий от Kompilainenn

это настолько ресурсоемко? фигасе

может, они использовали OpenCL просто чтоб свой велосипед не городить, а ускорение - бонус?

Хотя на планшетах и при использовании LibreOffice в качестве бэкенда в облаке - может иметь смысл.

Anonymous ★★★★★ ()

Поддержка OpenCL позволяет вынести ресурсоемкие вычисления в ряде функций с CPU на GPU

Надеюсь, это будет опционным!

toney ★★★★★ ()
Ответ на: комментарий от toney

ЕМНИП, OpenCL сам по своей архитектуре «опционален». Если нельзя работать на видяхе, то выполняется на CPU без каких-либо проблем.

shahid ★★★★★ ()
Ответ на: комментарий от shahid

Есть мнение, что какой-то банк хранит все свои данные в одном .xls .ods файле.

Прям как тот ювелирный магазин, который был без сигнализации и вообще охраны, но зато на полках с украшениями стояли иконы. Украшения вынесли, иконы оставили.

sT331h0rs3 ★★★★★ ()

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

dn2010 ★★★★★ ()
Ответ на: комментарий от shahid

Ну типа не совсем без проблем, накладные расходы на вызов OpenCL-функции могут в случае малого числа исполнительных устройств легко перекрыть выгоды от бесплатного параллелизма.

dn2010 ★★★★★ ()
Ответ на: комментарий от shahid

К сожалению действительно банки рассчитывают финансовые планы в электронных таблицах. Но в Экселе, что делает эту идею еще хуже.

anonymous ()

Чертовски нужная вещь. Им там заняться больше нечем, остальное всё работает?

mbivanyuk ★★★★★ ()
Ответ на: комментарий от Meyer

Нормальную поддержку мелкгомягкого xls

Если мелкомягкие форматы нужны, надо использовать мелкомягкий офис. Это не недостаток других офисов, это недостаток xls.

PolarFox ★★★★★ ()
Ответ на: комментарий от mbivanyuk

Да, нечем - поддержку тем оформления как в firefox уже до этого сделали. Но вот проверка обновлений в windows в версии 4.1.2.3 почему-то молчит о новой версии, да и иконки на рабочий стол при установке добавляются независимо от желания или нежелания пользователя.

PolarFox, я тоже всегда считал, что уж для создания документа нужно использовать родной для приложения формат. А то получается, что один MS Office белый и пушистый, а все остальные офисные пакеты плохие только по причине неидеальной совместимости с посторонним для них форматом. Даже в MS Office 2013 для сохранения .docx можно выбрать опцию, чтобы файл оказался хоть как-то совместим с опубликованными спецификациями формата.

grem ★★★★★ ()
Последнее исправление: grem (всего исправлений: 2)
Ответ на: комментарий от grem

Здесь я имел ввиду Strict Open XML (ISO/IEC 29500), который уже не откроется даже для просмотра в ms office 2007. Так что сохраняя в нём можно троллить владельцев 2007-й версии, а в 2010-й версии нельзя пересохранить в этом же формате.

grem ★★★★★ ()
Ответ на: комментарий от dn2010

лучше бы они туда добавили кеширование уже посчитанных функций

А ты уверен, что его там нет?

frob ★★★★★ ()
Ответ на: комментарий от mbivanyuk

Одни за деньги занимаются тем, что скажут. Другие — бесплатно тем, чем хотят сами. Некоторые совмещают.

Хочешь, чтобы было сделано что-то конкретное: делай сам или плати или жди.

frob ★★★★★ ()
Ответ на: комментарий от frob

А ты уверен, что его там нет?

Судя по скорости обсчитывания графиков при открытии, нету.

dn2010 ★★★★★ ()
Ответ на: комментарий от dn2010

Спроси в рабочее среднеевропейское время на #libreoffice-dev у moggi или kohei.

frob ★★★★★ ()

Даже в майбахе такого нет!

ziemin ★★ ()
Ответ на: комментарий от dn2010

«Лучше бы они сделали XYZ»...
Разработка поддержки OpenCL была оплачена клиентом. Подробности обещаны позже.
Ускорение существенное, (очевидно) зависит от того как много надо обработать, интересно становится с сотен ячеек (оценочное суждение =).

Формулы кэшируются.
«if the formula has been calculated already at some point and no dependencies are dirty we just use the calculated and cached value.»

Вот как-то так...

frob ★★★★★ ()
Ответ на: комментарий от shahid

Теоретически, но последний раз когда я смотрел, то он просто запускается поверх дравера видяхи, которые например в линуксе настолько тупые что на старых картах Nvidia без CUDA просто валятся, аля «нет OpenCL"я. Только в Apple если железо не может, то они независимо от видяхи средствами самой MacOS X пускают на CPU

vertexua ★★★☆☆ ()
Ответ на: комментарий от vertexua

судя по апи, обычно даже софт тупо выбирает первого вендора, первое устройство и не ищет обходных путей

ckotinko ☆☆☆ ()
Ответ на: комментарий от frob

Даже можно открыть распаковать файл, открыть его в текстовом редакторе и увидеть, что помимо записи самой формулы в файле хранится результат расчёта. Когда я в последний раз проверял как с этими файлами работает MS Excel 2010, то оказалось, что он не импортирует сами формулы, а берёт только значения результатов этих расчётов.

grem ★★★★★ ()

либра со времент старофиса умеет запускаться демоном, без gui вообще. вы можете использовать её в своем приложении в роли рисовалки диаграмм, генерилки pdf. ну и конечно - базы данных с табличным представлением и навороченным калькулятором. отлаживать такую логику под силу даже секретарше. :)

anonymous ()

Что только не придумают, чтобы этот тормозной монстр начал хоть как-то шевелиться.

alpha4 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.