LINUX.ORG.RU
 
adriano32

GNU Scientific Library (GSL) 1.15


0

4

6 мая 2011 года была анонсирована версия 1.15 GNU Scientific Library (GSL) - библиотеки для вычислений в прикладной математике и науке.

GSL является частью проекта GNU и распространяется на условиях GNU GPL.

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

Ознакомиться со списком категорий вычислений можно на википедии или скачав архив с исходными кодами.

В очередной версии, вышедшей через 14 месяцев после предыдущей версии 1.14, появился ряд новых функций, а также были исправлены некоторые ошибки. С подробным списком изменений можно ознакомиться в архиве с исходными кодами или он-лайн в репозитарии GSL на bzr.savannah.gnu.org/lh/gsl/

GSL используется такими проектами как PDL (Perl Data Language), MathGL, PSPP.
Библиотека может оказаться полезной как студентам, аспирантам, преподавателям в учебных и научных целях, так и разработчикам специализированного программного обеспечения.

На странице GSL на gnu.org можно найти информацию о поддерживаемых платформах, руководства, информацию о расширениях и связанных проектах.

>>> Исходный код GSL

>>> Страница GSL на gnu.org


[#]  
registrant

есть какие-нибудь бенчмарки?

***** ()
[#]  
Ubuntu1104

Линукс двигает науку,это хорошо.

# ()
[#]  
luke

Годно

** ()
[#]  

Для кого это полезно?

anonymous ()
[#] Ответ на: комментарий от anonymous 09.05.2011 8:29:28  

> Для кого это полезно?

> ... в прикладной математике и науке

Не?

()
[#]  

Как там дела с производительностью? В сравнении с MKL, например

()
[#]  
Sadler

Как раз нечто подобное искал. Надо только посмотреть, умеет ли оно вычисления с любой точностью (такой тип, который бы сам расширялся под число необходимых разрядов).

* ()
[#] Ответ на: комментарий от Sadler 09.05.2011 9:34:48  

Если вам нужны числа, то gmp.

gmplib.org

* ()
[#] Ответ на: комментарий от ZhAN 09.05.2011 9:48:51  
Sadler

> Если вам нужны числа, то gmp.

Спасибо, посмотрю.

* ()
[#] Ответ на: комментарий от Gvidon 09.05.2011 9:31:59  
buddhist

В gsl всегда слабовата производительность. Но зато все в одном месте.

*** ()
[#]  

У них собственная реализация BLAS и Lapack или они используют общедоступные библиотеки?

*** ()
[#]  
gns

До NAG library пока не дотягивает. Значит есть, куда расти :)

** ()
[#]  

Все правильно делают.

* ()
[#]  

Удобная библиотека, жаль, медленная: на CUDA критические части так и не переписали...

**** ()
[#] Ответ на: комментарий от Sadler 09.05.2011 9:34:48  
psionik

ага, например, число Пи на 2 терабайта. ага

()
[#] Ответ на: комментарий от gns 09.05.2011 11:37:45  
hulk

>До NAG library пока не дотягивает. Значит есть, куда расти :)

Зато бесплатна, что для научной работы - самое то. Да и Фортран 90 - R.I.P. Чтобы быстро проверить идею - проигрывает Матлаб, а для быстрых расчетов - можно Си и GSL.

()
[#]  
deterok

А методы многомерной оптимизации присутствуют тут?

** ()
[#]  
swar0g

только octave, только хардкор

*** ()
[#] Ответ на: комментарий от swar0g 09.05.2011 13:46:48  
hulk

>только octave, только хардкор

даже не смешно. Часть библиотек написа красноглазыми студентами - разбирай потом, где косяк. QtOctave как интерфейс вообще неюзабельный, под 4е кеды не переведен.

()
[#]  

А есть ли смысл в создании библиотеки, разве свободных научных библиотек мало существует ?

**** ()
[#] Ответ на: комментарий от hulk 09.05.2011 12:15:54  
gns

Сдается мне, что вести о смерти фортрана сильно преувеличены. Я тут посмотрел на то, что нового в 2003м, ну так кое что интересное есть. MATLAB с внешними библиотеками на чем хочешь — вполне себе средство "поиграться параметрами". Потом эти внешние библиотеки прекрасно превращаются в боевое приложение.

Так что не в пользу NAG — только цена. Но ученых (по крайней мере в России) это никогда не парило. :)

Вот моим математикам полиномы Эрмита понадобилась, что-то я этого сразу в GSL не нашел. А в NAGе — есть. :)

** ()
[#] Ответ на: комментарий от argin 09.05.2011 13:53:52  
gns

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

** ()
[#] Ответ на: комментарий от gns 09.05.2011 13:58:04  
hulk

>Сдается мне, что вести о смерти фортрана сильно преувеличены. Я тут посмотрел на то, что нового в 2003м, ну так кое что интересное есть.

Вы видите распространяемые библиотеки на Фортран 90? Я вижу только на Си или Фортран 77. Раньше проблем не было, весь фортрановский код перегонялся в Си с полтычка. Тот же clapack так сделан, с помощью f2c. Теперь же каждый компилятор с Фортран 90 как хочет - так и работает. Прямо вещь в себе. cfortran для перевода на Си более-менее работает, наверное, только с NAG компилятором. Если Фортран 90 и выше так и останется вещью в себе - то он очень быстро вымрет.

>Вот моим математикам полиномы Эрмита понадобилась, что-то я этого сразу в GSL не нашел. А в NAGе — есть. :)

Это здорово:) Ложка дегтя: не на каждом кластере она доступна, чтобы так запросто ее использовать для больших задач.

()
[#] Ответ на: комментарий от gns 09.05.2011 13:59:43  
hulk

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

Я про то же Reset'у и толкую. Думать над задачей надо, а не о том, где ту или иную библиотеку искать.

()
[#] Ответ на: комментарий от Eddy_Em 09.05.2011 12:00:18  

Не такая уж и медленная (фурье разве что лучше из fftw брать). Хотя про линейную алгебру ничего сказать не могу — не использовал.

* ()
[#] Ответ на: комментарий от hulk 09.05.2011 14:13:24  
quickquest

>где ту или иную библиотеку искать

"Русский-народный-блатной-хороводный" Рунге-Кутт был у меня в школьные годы на колоде перфокарт для ЕС ЭВМ, жаль не сохранился, а то бы выслал посылку по почте :)

***** ()
[#] Ответ на: комментарий от quickquest 09.05.2011 14:35:23  
hulk

>"Русский-народный-блатной-хороводный" Рунге-Кутт был у меня в школьные годы на колоде перфокарт для ЕС ЭВМ, жаль не сохранился, а то бы выслал посылку по почте :)

Фи, это ж Фортран. Такое и я найти могу. Такое же, но только на Си есть?

()
[#] Ответ на: комментарий от deterok 09.05.2011 12:53:35  

> А методы многомерной оптимизации присутствуют тут?

Да

* ()
[#] Ответ на: комментарий от hulk 09.05.2011 14:40:14  
quickquest

>Фи, это ж Фортран.

Фортран для числодробилок - это не "Фи", а "О-го-го"! (c) "12 Стульев" :)

***** ()
[#] Ответ на: комментарий от quickquest 09.05.2011 14:47:40  
hulk

Дык эта, тама исчо два предложения было. Про такое же, но на Си как бы замяли? Нехорошо

()
[#] Ответ на: комментарий от quickquest 09.05.2011 14:47:40  

>> Фи, это ж Фортран.

> Фортран для числодробилок - это не "Фи", а "О-го-го"! (c) "12 Стульев" :)

Для "числодробилок" да — не хуже чем С/С++. А вот для всего остального "Фи" ;)

* ()
[#] Ответ на: комментарий от argin 09.05.2011 13:53:52  

> А есть ли смысл в создании библиотеки, разве свободных научных библиотек мало существует ?

Вообще то совсем не много. Например по спец. функциям есть сводная таблица http://dlmf.nist.gov/software/ . Из нее кстати видно, что GSL совсем не плохо смотрится (только функций от комплексного аргумента мало ...).

* ()
[#]  

Она не LGPL? Жестоко.

***** ()
[#]  
Ziel

Если пишите новости про библиотеки для научных расчетов, то, может быть, стоит объявлять и о релизах библиотеки Alglib? Есть еще интересные библиотеки: NumPy, Scipy, Sympy, Matplotlib, тысячи их. Я использую все эти библиотеки для создания своих программ для различных узкоспециализированных научных расчетов.

()
[#] Ответ на: комментарий от Ziel 09.05.2011 16:56:38  
adriano32

Обо всём по порядку, уважаемый.
Вот релиз NumPy не за горами...
SciPy 0.9.0 вышел в марте.
Sympy тоже в марте

И да, я не понял, вы осуждаете, что я написал на ЛОРе новость о том, что часто обсуждается в Development, но так ни разу не было в News или наоборот?

*** ()
[#] Ответ на: комментарий от Ziel 09.05.2011 16:56:38  

GSL отличная шустрая библиотека, все эти *py тут прилично отстают. Я 2 статьи в PRA написал (и еще одна в процессе) с помощью GSL кода.

* ()
[#] Ответ на: комментарий от unanimous 09.05.2011 17:07:39  
hulk

>Я 2 статьи в PRA написал

коллега? тоже в PRA пишу. Можно узнать тематику? У меня - лазерное охлаждение, пленение, атомные ловушки.

()
[#] Ответ на: комментарий от adriano32 09.05.2011 17:02:14  
Ziel

Я особо не осуждаю.

()
[#] Ответ на: комментарий от Ziel 09.05.2011 17:57:32  
adriano32

И какой же аспект вы всё-таки осуждаете? :)
То что нет инфы по всем существующим полезным библиотеки?

*** ()
[#] Ответ на: комментарий от hulk 09.05.2011 17:34:30  
Ziel

Просветите.

PRA = Physical Review A journal? В OpenAccess?

Там кажется про механику макротел и робототехнику (мои интересы) не пишут, судя по описанию на главной. Сегодня нашел ресурс OpenAccess http://arxiv.org/ Если буду писать статьи, то туда.

()
[#] Ответ на: комментарий от adriano32 09.05.2011 18:12:22  
Ziel

Можно и так сказать. Нет инфы по всем. Новости я читаю только на ЛОРе. Захожу автоматически, как только линь загрузится. А так сразу и инфа грамотная и актуальная, и коментарии.

()
[#] Ответ на: комментарий от Ziel 09.05.2011 18:12:56  
hulk

>PRA = Physical Review A journal?

Да. Журнал рецензируемый и очень популярный на Западе. Серия A - по оптике. Есть и другие серии, но вообще-то журнал физический.

>Сегодня нашел ресурс OpenAccess http://arxiv.org/ Если буду писать статьи, то туда.

Свободный нерецензируемый журнал. Обычно, туда посылают перед посылкой в нормальный рецензируемый журнал, чтобы другие могли посмотреть статью, не покупая подписки на журнал. Там есть разделы. Ищите свой. В моей тематике необходимо подтверждение от другого лица в этой тематике. Хотя людей, кто согласится вас подтвердить, найти можно. Но вообще, прежде надо определиться, зачем вам публикация, а уж потом выбирать журнал.

()
[#] Ответ на: комментарий от abalakin 09.05.2011 14:53:07  

>Для "числодробилок" да — не хуже чем С/С++. А вот для всего остального "Фи" ;)

Для "числодробилок" он не просто "не хуже", а лучше. А для "остального" этот язык никогда и не предполагалось использовать.

anonymous ()
[#] Ответ на: комментарий от anonymous 09.05.2011 21:08:22  

>> Для "числодробилок" да — не хуже чем С/С++. А вот для всего остального "Фи" ;)

> Для "числодробилок" он не просто "не хуже", а лучше. А для "остального" этот язык никогда и не предполагалось использовать.

Не лучше, а почти не хуже. Нет ни одной фортрановской конструкции, которую нельзя реализовать на С/С++ с не худшей производительностью чем на фортране. В тоже время на С/С++ легче оптимизировать код под конретный процессор/систему, чем на фортране. Особенно это касается многопотоковых и многопроцессорных программ.

А насчет всего остального ... ведь пытаются ... значит это кому-то надо. Но очень сложно на фортране :/ . MathGL в какой-то мере визуализацию из под фортрана облегчает.

* ()
[#] Ответ на: комментарий от abalakin 09.05.2011 22:32:53  
adriano32

Скромно плюсую

На форте не писал, однако то, что в бинарные дистрибуты вместо fort77 ставят обёртку f2c по умолчанию, вместо того, чтоб gfortran, как бы, наверное, намекает...

>>MathGL в какой-то мере визуализацию из под фортрана облегчает.
>>MathGL

Алексей, я вас рассекретил в другом треде, ничего страшного? :)

*** ()
[#] Ответ на: Скромно плюсую от adriano32 09.05.2011 22:38:30  

> Алексей, я вас рассекретил в другом треде, ничего страшного? :)

Да я вроде не сильно и скрывался ;)

* ()
[#] Ответ на: комментарий от abalakin 09.05.2011 22:55:32  
adriano32

На ЛОРе такая редкость видеть людей, которые чем-то реально занимаются, а не флудят во все разделы подряд :)

*** ()
[#] Ответ на: комментарий от abalakin 09.05.2011 22:32:53  

>В тоже время на С/С++ легче оптимизировать код под конретный процессор/систему, чем на фортране. Особенно это касается многопотоковых и многопроцессорных программ.

Ну-ну, интересно где эта "легкость" порылась?

Или прагмы проще писать чем комментарии в фортране? Давай покажи мне легкость С++ для вот такой например конструкции

!$OMP WORKSHARE

FORALL (I = 1 : N, AA(1, I) == 0) AA(1, I) = I

BB = TRANSPOSE(AA)

CC = MATMUL(AA, BB)

!$OMP ATOMIC

S = S + SUM(CC)

!$OMP END WORKSHARE

* ()
[#] Ответ на: комментарий от adriano32 09.05.2011 22:57:49  

> На ЛОРе такая редкость видеть людей, которые чем-то реально занимаются, а не флудят во все разделы подряд :)

На самом деле их не столь уж и мало. Со многими знаком лично. Просто они заняты делом и флудить некогда :) Поэтому их не так заметно на общем фоне.

* ()
[#] Ответ на: комментарий от terminat0r 09.05.2011 23:06:27  

>> В тоже время на С/С++ легче оптимизировать код под конретный процессор/систему, чем на фортране. Особенно это касается многопотоковых и многопроцессорных программ.

> Ну-ну, интересно где эта "легкость" порылась?

> Или прагмы проще писать чем комментарии в фортране? Давай покажи мне легкость С++ для вот такой например конструкции

OMP есть и на С/С++ (http://ru.wikipedia.org/wiki/OpenMP). Пример переписывается дословно.

Другой вопрос, что реализация OMP далеко не оптимальна за счет лишних инструкций создания/удаления потоков и неоптимизированной памяти. На pthread я напишу код более оптимальный (но более громоздкий) за счет лучшей организации обращений к памяти и создания/удаления нитей. Собственно кусок кода распараллеливания уже есть в "черновиках" MathGL 2.0.

* ()