Розробка програмно-математичного забезпечення для паралельної обробки розріджених матриць за допомогою технологи OpenMP
Ключові слова:
розріджені матриці, формат crs, операції над розрідженими матрицями, паралельна реалізація, openmpАнотація
Робота присвячена паралельному обчисленню розріджених матриць. В ході роботи були спроектовані і оптимізовані за допомогою мови програмування С алгоритми для роботи з розрідженими матрицями для наступних операцій: транспонування, множення розріджених матриць, множення розрідженій матриці на щільний вектор, додавання розріджених матриць. Для зберігання даних розроблений гнучкий алгоритм, який застосовує найбільш оптимальної варіант збереження для конкретного типу операцій. Були застосовані процедури виділення щільних підматриць в розріджених матрицях. Для прискорення роботи програми використовується технологія паралельного обчислення OpenMP, яка дає можливість на апаратному рівні мінімізувати ресурси і час виконання.
Посилання
Pissanetski, S. (1988). Sparse matrix technology. Moscow: Mir, 410.
George, A., Liu, J. (1984). Numerical solution of large sparse systems of equations. Moscow: Mir, 333.
Tewarson, R. (1977). Sparse matrix. Moscow: Mir, 191.
Horton, I. (2011). Visual C++ 2010: full course. Dialektika, 1216.
Antonov, A. S. (2009). Paralelne programming using technology OpenMP. Moscow: MGY, 77.
Golub, J., Van Loan, C. (1999). Matrix calculations. Moscow: Mir, 548.
Potemkin, V. G. Guide to the MATLAB, 164. Available at: http://ui-engineers.ddns.net/_ld/1/143___Matlab.pdf
Kaspersky, K. (2003). Technique optimization programs. Efficient use of memory. Saint Petersburg: BHV-Petersburg, 464.
Horton, I. (2007). Visual C++ 2005: full course. Williams, 1152.
Demmel, J. W. (1997). Applied Numerical Linear Algebra. SIAM, 431.
Demmel J. U.C. (2014). Applications of Parallel Computers. Available at: https://people.eecs.berkeley.edu/~demmel/cs267_Spr14/
Tewarson, R. P. (1973). Sparse Matrices. Academic Press, 160
Buttari, A., Langou, J., Kurzak, J., Dongarra, J. (2007). A Classof Parallel Tiled Linear Algebra Algorithms for Multicore Architectures. University of Tennessee, 191.
Kernighan, B., Ritchie, D. (2009). The C Programming Language. Williams, 304.
Gerber, R., Bik, A. J. C., Smith, K. B., Tian, X. (2010). The Software Optimization Cookbook. Saint Petersburg: Piter, 352
Bik, A. J. C. (2006). The Software Vectorization Handbook: Applying Multimedia Extensions for Maximum Performance. Intel Press, 236.
Vorontsov, K. V. Mathematical methods of training on precedents (machine learning theory), 141. Available at: http://www.machinelearning.ru/wiki/images/6/6d/Voron-ML-1.pdf
Deacons, A. (2010). The data analysis, training on precedents, logic games, WEKA system, RapidMiner and MatLab. MAKSPress, 278.
Zhuravlev, Y. (1998). Selected scientific works. Moscow: Magistr, 420.
Zhuravlev, Y. (1978). Correct algebras over sets incorrect (heuristic) algorithms. Cybernetics, 2, 35−43.
Rudakov, K. (1989). On the algebraic theory of universal and local constraints for classification problems. Recognition, classification, prognosis, 1, 176−201.
Rudakov, K. (1987). Completeness and universal constraints in the problem of correction heuristic algorithms cal classification. Cybernetics, 3, 106−109.
Petrov, S. O., Marchenko, I. O., Dibrov, B. O. (2015). The use of convolution operators in the tasks of edge detection. Eastern-European Journal of Enterprise Technologies, 6(4(78)), 27−31. doi:10.15587/1729-4061.2015.56548
##submission.downloads##
Опубліковано
Номер
Розділ
Ліцензія
Авторське право (c) 2016 О. В. Минько, К. Е. Золотько
Ця робота ліцензується відповідно до Creative Commons Attribution 4.0 International License.