Sıralama işlemi, bilgisayar bilimlerinin en temel problemlerindendir. Karmaşık verilerin, sıralama işlemleriyle düzenli hale getirilmesi birçok yararlar sağlamaktadır. Sıralama gereksinimi de aslında düzensiz verilerin işlenmesinde yaşanan sıkıntılardan kaynaklanır. Metinlerde alfabetik sıralama yapılması veya sayısal verilerin büyükten küçüğe (veya tersine) sıralanması buna örnek olarak verilebilir. Bu çalışmada bilinen sayısal sırama işleminin günümüz ev bilgisayarlarında dahi mevcut olan çok çekirdekli işlemcilerin kullanımı ile ne kadar hızlandırılabileceğini gösterilmektedir. Eğer basitçe ve hızlıca sayı sıralanması istenirse, quicksort veya merge-sort kullanılabilir, en çok bilinen sıralama algoritmaları da bunlardır. Bu algoritmaların işlem karmaşıklığı literatürde O( n lg n ) olarak verilir. Özel şartlara sahip sayılarla yapılan sıralamalarda ise O( n ) karmaşıklığa kadar inilebilir. Ancak bu değerlerle sıralama işleminin çalışma süresi kesin olarak bilinemez, sadece tahmin edilebilir. Öyle ki, işlem karmaşıklığı aynı kalsa da algoritmalar hızlandırılabilir. Bunun yöntemi paralel hesaplama teknikleridir. Bu çalışmada standart bir i5 işlemcili bir bilgisayarda OpenMP kütüphanesi ile 8 çekirdek üzerinde çalışılmış, 45 kata kadar önemli hız değerleri elde edilmiştir.
Sıralama algoritmaları Paralel hesaplama Çekirdek programlama OpenMP
Sorting of given random data is putting them into a certain order. For example, alphabetical sorting of texts, or sorting numerical data in ascending or descending order. The requirement of sorting jobs is actually caused by difficulties in processing unsorted data as accessing on non-indexed data in databases. This study focused to how many times can be accelerated for the numerical sorting process by using processors and its cores of today's home computers. If data hasn’t any form of special numbers, the aim is simply and quickly sort of some numbers, the well-known fastest sort algorithms are quicksort or merge-sort. The processing complexity of these algorithms is given in the literature as O(n lg n). However, this formula certainly does not give an idea of the working time of the sorting process. Although the complexity remains the same, the algorithms can be accelerated. The suggested method in this work uses parallel computing techniques for speed-up. In this study, we used OpenMP library on a standard i5 computer with 8 cores and speed-up values is reached to 45 times.
Sorted algorithms Parallel computing Core programming OpenMP
Birincil Dil | Türkçe |
---|---|
Konular | Mühendislik |
Bölüm | Araştırma Makaleleri |
Yazarlar | |
Erken Görünüm Tarihi | 30 Aralık 2022 |
Yayımlanma Tarihi | 31 Aralık 2022 |
Yayımlandığı Sayı | Yıl 2022 Cilt: 11 Sayı: 3 |