Skip to main content
Log in

MIMOPack: a high-performance computing library for MIMO communication systems

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

This paper presents MIMOPack, a set of optimized functions to perform some of the most complex stages in multiple-input multiple-output (MIMO) communication systems such as channel coding, preprocessing, precoding and detection. These functions are optimized to be run in a wide range of architectures increasing the portability of scientific codes between different computing environments. MIMOPack aims to become a useful library for the research community facilitating to the programmer the development of adaptable parallel applications and also to speed up simulation platforms used to assess different technologies proposed by several companies involved in standarization processes.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2

Similar content being viewed by others

References

  1. Paulraj AJ, Gore DA, Nabar RU, Blcskei H (2004) An overview of MIMO communications—a key to gigabit wireless. Proc IEEE 92(2):198–218

    Article  Google Scholar 

  2. Rusek F, Persson D, Lau B, Larsson E, Marzetta T, Edfors O, Tufvesso F (2013) Scaling up MIMO: opportunities and challenges with very large arrays. IEEE Signal Process Mag 30(1):40–60

    Article  Google Scholar 

  3. Lin Y, Lee H, Woh M, Harel Y, Mahlke S, Mudge T, Chakrabarti C, Flautner K (2007) SODA: a high-performance DSP architecture for software-defined radio. IEEE MICRO 27(1):114–123

    Article  Google Scholar 

  4. Yang C-H, Markovic D (2008) A multi-core sphere decoder VLSI architecture for MIMO communications. Global telecommunications conference, pp 1–6

  5. Wu D, Eilert J, Liu D (2011) Implementation of a high-speed MIMO soft-output symbol detector for software defined radio. J Signal Process Syst 63(1):27–37

    Article  Google Scholar 

  6. Tan K, Liu H, Zhang J, Zhang Y, Fang J, Voelke GM (2011) Sora: high-performance software radio using general-purpose multi-core processors. Commun ACM 54(1):99–107

    Article  Google Scholar 

  7. Wu M, Sun Y, Gupta S, Cavallaro J (2011) Implementation of a high throughput soft MIMO detector on GPU. J Signal Process Syst 64(2):123–136

    Article  Google Scholar 

  8. Nylanden T, Janhunen J, Silven O, Juntti M (2010) A GPU implementation for two MIMO-OFDM detectors. International conference on embedded computer systems, pp 293–300

  9. Falcao G, Silva V, Sousa L (2009) How GPUs can outperform ASICs for fast LDPC decoding. International conference of supercomputing, pp 123–136

  10. Innovative Computing Laboratory, University Tennessee, Knoxville (2009) MAGMA: Matrix algebra on GPU and multicore architectures. Available at http://icl.cs.utk.edu/magma/index.html

  11. EM Photonics, Inc (2010) CULA Tools - GPU accelerated LAPACK. Available at http://www.culatools.com

  12. MathWorks, Inc. (2011) Communications System Toolbox - Design and simulate the physical layer of communication systems. http://www.mathworks.es/products/communications/

  13. ITPP-C++ Library for Mathematical, signal processing, speech processing, and communications classes and functions. Available at http://itpp.sourceforge.net

  14. Roger S, Ramiro C, Gonzalez A, Almenar V, Vidal AM (2012) An efficient GPU implementation of fixed-complexity sphere decoders for MIMO wireless systems. Integr Comput-Aided Eng 19(4):341–350

    Google Scholar 

  15. Ramiro C, Roger S, Gonzalez A, Almenar V, Vidal AM (2013) Multi-core implementation of a fixed-complexity tree-search detector for MIMO communications. J Supercomput 65(3):1010–1019

    Article  Google Scholar 

  16. Garcia VM, Gonzalez A, Gonzalez C, Martinez-Zaldivar FJ, Ramiro C, Roger S, Vidal AM (2011) The impact of GPU/multicore in signal processing: a quantitative approach. Waves 3:96–106

    Google Scholar 

  17. Roger S, Ramiro C, Gonzalez A, Almenar V, Vidal AM (2012) Fully parallel GPU implementation of a fixed-complexity soft-output MIMO detector. IEEE Trans Veh Technol 61(8):3796–3800

    Article  Google Scholar 

  18. Domene F, Roger S, Ramiro C, Piero G, Gonzalez A (2012) A reconfigurable GPU implementation for Tomlinson–Harashima precoding. 37th international conference on acoustics, Kyoto, Japan

  19. Domene F, Roger S, Ramiro C, Piero G, Gonzalez A (2012) Efficient implementation of multiuser precoding algorithms on GPU for MIMO-OFDM systems. XXVII Simposium Nacional de la Unin Cientfica Internacional de Radio, Elche, Spain

  20. Ramiro C, Simarro Haro MA, Martinez-Zaldivar MJ, Vidal AM, Gonzalez A (2013) A GPU implementation of an iterative receiver for energy saving MIMO ID-BICM systems. J Supercomput. doi:10.1007/s11227-013-1081-x

  21. Larsson EG (2009) MIMO detection methods: how they work [lecture notes]. Signal Process Mag IEEE 26(3):91–95. doi:10.1109/MSP.2009.932126

    Article  Google Scholar 

Download references

Acknowledgments

This work has been supported by SP20120646 project of Universitat Politècnica de València, by ISIC/2012/006 and PROMETEO FASE II 2014/003 projects of Generalitat Valenciana; and has been supported by European Union ERDF and Spanish Government through TEC2012-38142-C04-01.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Carla Ramiro.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ramiro, C., Vidal, A.M. & Gonzalez, A. MIMOPack: a high-performance computing library for MIMO communication systems. J Supercomput 71, 751–760 (2015). https://doi.org/10.1007/s11227-014-1328-1

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-014-1328-1

Keywords

Navigation