Ubuntu'dan önceden oluşturulmuş paketi yüklemeye karşı LAPACK'i kaynaktan derlemenin herhangi bir faydası var mı?


13

ATLAS'ın derlendiği makine için kendini optimize edebildiğini biliyorum ve bu nedenle maksimum faydalar kaynaktan derlenerek bulundu. LAPACK'i kaynaktan derlemenin herhangi bir faydası var mı? Önceden oluşturulmuş paketi kurmak çok daha kolay olurdu.


Neden zaman harcandığını görmek için bu tekniği denemeye değer olabilir . Büyük olmayan matrislerle çok çalışıyorsam kütüphane rutinleri zamanlarının yarısından fazlasını girdi karakter bayraklarını ve diğer girdi sınıflandırmalarını sınıflandırarak harcarlar, böylece kütüphaneyi artırarak çok fazla hız alabilirsiniz. birkaç iyi seçilmiş el kodlu rutin ile.
Mike Dunlavey

Yanıtlar:


9

OpenBlas oldukça hızlıdır, bu yüzden LAPACK'e bağlayabilirsiniz. CPU satıcınızdan önceden derlenmiş LAPACK / BLAS sürümünü denediniz mi? Örneğin AMD ACML (ücretsiz) veya Intel MKL (ticari olmayan ve akademik olmayan kullanım için linux'da ücretsiz)? Kurulum dosyasını açmanız ve çalıştırmanız yeterlidir.

Bence ATLAS kullanmanın tek avantajı sıradışı bir CPU kullandığınızda. Aksi takdirde CPU satıcısından bir tane kullanın. Ayrıca gerçekten sallanan nVIDIA CUDA ve AMD OpenCL sürümleri var.

DÜZENLEME: her zaman yazılımdan kaynaktan derlemekten çok daha kolay bir kaynaktan Ubuntu DEB paketi oluşturabileceğinizi unutmayın.


Ben senin öneri ile gidip MKL yükleyeceğim düşünüyorum. Ayrıca DEB paketleri oluşturma ipucu için teşekkürler, bunun mümkün olduğunu bilmiyordum.
OSE

2
Ld (bu kütüphaneleri bulabilmek için dinamik kütüphaneler linker) yapılandırmanız gerektiğini unutmayın. Intel MKL'den BLAS ve LAPACK libmkl_rt.sogenellikle aşağıdakiler kullanılarak bağlanan dosyada bulunur:-L/opt/intel/mkl/lib/intel64 -lmkl_rt
Misery

2
Birincisi, Intel'in ticari olmayan lisansının her bir sürümle gittikçe daha kısıtlayıcı hale geldiğini, araştırmalarınız için herhangi bir para alır almaz akademik kullanımın kapsamadığı konusunda çok açık oldukları noktaya dikkat çekmelidir.
Christian Clason

Evet, kayda değer. Ancak kişi bunu ücretsiz olarak test edebilir:] Ve eğer faydalı olduğu kanıtlanırsa, dünyadaki en pahalı şey değildir.
Sefalet

7

Depo paketinin derlenme şekli nedeniyle iş parçacığı ile kullanımı güvenli değildir. Lapack forumundaki hatayı bildirdim , ancak geçici çözümlerin veya çözümlerin depoya damlaması uzun zaman alacak. Kendiniz derlerseniz, gfortran için "-frekursive" eklediğinizden emin olun.


6

Benim tecrübelerime göre, ubuntu'nun son sürümlerinde blas / lapack kullanmanın en iyi yolu paketlenmiş openblas kullanmaktır.

Değeri için, çoğunlukla python numpy / scipy aracılığıyla blas / lapack kullanıyorum ve openblas kullanarak doğrusal cebirin bazılarını varsayılan değerlere göre 200x gibi hızlandırıyorum. Özel ATLAS kullanmayı denedim, ancak büyük bir acıydı ve openblas'a karşı herhangi bir hızlanma vermedi, ama yanlış yapıyordum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.