The Impact of Precision Tuning on Embedded Systems Performance: A Case Study on Field-Oriented Control

Authors Gabriele Magnani , Daniele Cattaneo , Michele Chiari , Giovanni Agosta

Thumbnail PDF


  • Filesize: 0.77 MB
  • 13 pages

Document Identifiers

Author Details

Gabriele Magnani
  • DEIB, Politecnico di Milano, Italy
Daniele Cattaneo
  • DEIB, Politecnico di Milano, Italy
Michele Chiari
  • DEIB, Politecnico di Milano, Italy
Giovanni Agosta
  • DEIB, Politecnico di Milano, Italy

Cite AsGet BibTex

Gabriele Magnani, Daniele Cattaneo, Michele Chiari, and Giovanni Agosta. The Impact of Precision Tuning on Embedded Systems Performance: A Case Study on Field-Oriented Control. In 12th Workshop on Parallel Programming and Run-Time Management Techniques for Many-core Architectures and 10th Workshop on Design Tools and Architectures for Multicore Embedded Computing Platforms (PARMA-DITAM 2021). Open Access Series in Informatics (OASIcs), Volume 88, pp. 3:1-3:13, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2021)


Field Oriented Control (FOC) is an industry-standard strategy for controlling induction motors and other kinds of AC-based motors. This control scheme has a very high arithmetic intensity when implemented digitally - in particular it requires the use of trigonometric functions. This requirement contrasts with the necessity of increasing the control step frequency when required, and the minimization of power consumption in applications where conserving battery life is paramount such as drones. However, it also makes FOC well suited for optimization using precision tuning techniques. Therefore, we exploit the state-of-the-art FixM methodology to optimize a miniapp simulating a typical FOC application by applying precision tuning of trigonometric functions. The FixM approach itself was extended in order to implement additional algorithm choices to enable a trade-off between execution time and code size. With the application of FixM on the miniapp, we achieved a speedup up to 278%, at a cost of an error in the output less than 0.1%.

Subject Classification

ACM Subject Classification
  • Hardware → Power estimation and optimization
  • Software and its engineering → Compilers
  • Applied computing → Consumer health
  • Approximate Computing
  • Field-oriented control
  • Precision Tuning


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. A. Agrawal et al. Approximate computing: Challenges and opportunities. In 2016 IEEE International Conference on Rebooting Computing (ICRC), pages 1-8, 2016. Google Scholar
  2. Massimo Alioto, Vivek De, and Andrea Marongiu. Energy-quality scalable integrated circuits and systems: Continuing energy scaling in the twilight of moore’s law. IEEE J. Emerg. Sel. Topics Circuits Syst., 8(4):653-678, December 2018. URL:
  3. Jason Ansel, Yee L. Wong, Cy Chan, Marek Olszewski, Alan Edelman, and Saman Amarasinghe. Language and compiler support for auto-tuning variable-accuracy algorithms. In Int. Symp. on Code Generation and Optimization (CGO 2011), pages 85-96, April 2011. URL:
  4. Vladislav M. Bida, Dmitry V. Samokhvalov, and Fuad Sh Al-Mahturi. PMSM vector control techniques - a survey. In 2018 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus), pages 577-581. IEEE, 2018. Google Scholar
  5. Felix Blaschke. Das verfahren der feldorientierung zur regelung der asynchronmaschine. Siemens Forschungs und Entwicklungsberichte, 1972. Google Scholar
  6. I. Boldea. Electric generators and motors: An overview. CES Transactions on Electrical Machines and Systems, 1(1):3-14, 2017. URL:
  7. Carlo Brandolese, Simone Corbetta, and William Fornaciari. Software energy estimation based on statistical characterization of intermediate compilation code. In Proceedings of the 2011 International Symposium on Low Power Electronics and Design, 2011, Fukuoka, Japan, August 1-3, 2011, pages 333-338, 2011. Google Scholar
  8. D. Casadei, F. Profumo, G. Serra, and A. Tani. Foc and dtc: two viable schemes for induction motors torque control. IEEE Transactions on Power Electronics, 17(5):779-787, 2002. URL:
  9. Daniele Cattaneo, Michele Chiari, Gabriele Magnani, Nicola Fossati, Stefano Cherubin, and Giovanni Agosta. FixM: Code generation of fixed point mathematical functions. Sustainable Computing: Informatics and Systems, 29:100478, 2021. URL:
  10. Stefano Cherubin and Giovanni Agosta. Tools for reduced precision computation: a survey. ACM Computing Surveys, 53(2), April 2020. URL:
  11. Stefano Cherubin, Daniele Cattaneo, Michele Chiari, and Giovanni Agosta. Dynamic precision autotuning with TAFFO. ACM Trans. Archit. Code Optim., 17(2), May 2020. URL:
  12. Stefano Cherubin, Daniele Cattaneo, Michele Chiari, Antonio Di Bello, and Giovanni Agosta. TAFFO: Tuning assistant for floating to fixed point optimization. IEEE Embedded Syst. Lett., 12(1):5-8, 2019. URL:
  13. Stefano Cherubin et al. Implications of Reduced-Precision Computations in HPC: Performance, Energy and Error. In Parallel Computing is Everywhere, volume 32: Advances in Parallel Computing, pages 297-306, March 2018. International Conference on Parallel Computing (ParCo), Sep 2017. URL:
  14. George B. Dantzig. Discrete-variable extremum problems. Operations Research, 5(2):266-288, 1957. URL:
  15. Eva Darulova, Einar Horn, and Saksham Sharma. Sound mixed-precision optimization with rewriting. In Proc. 9th ACM/IEEE Int. Conf. on Cyber-Physical Systems, ICCPS '18, pages 208-219, 2018. URL:
  16. Marco Festa, Nicole Gervasoni, Stefano Cherubin, and Giovanni Agosta. Continuous program optimization via advanced dynamic compilation techniques. In Proceedings of the 10th and 8th Workshop on Parallel Programming and Run-Time Management Techniques for Many-core Architectures and Design Tools and Architectures for Multicore Embedded Computing Platforms, pages 1-6, 2019. Google Scholar
  17. R. Gabriel, W. Leonhard, and C. J. Nordby. Field-oriented control of a standard AC motor using microprocessors. IEEE Transactions on Industry Applications, IA-16(2):186-192, 1980. URL:
  18. Davide Gadioli et al. Tunable approximations to control time-to-solution in an hpc molecular docking mini-app. The Journal of Supercomputing, pages 1-29, 2020. Google Scholar
  19. Michael A Heroux, Douglas W Doerfler, Paul S Crozier, James M Willenbring, H Carter Edwards, Alan Williams, Mahesh Rajan, Eric R Keiter, Heidi K Thornquist, and Robert W Numrich. Improving performance via mini-applications. Sandia National Laboratories, Tech. Rep. SAND2009-5574, 3, 2009. Google Scholar
  20. IEEE Computer Society Standards Committee. Floating-Point Working group of the Microprocessor Standards Subcommittee. IEEE Standard for Floating-Point Arithmetic. IEEE Std 754-2008, pages 1-70, August 2008. URL:
  21. H. Keding, M. Willems, M. Coors, and H. Meyr. FRIDGE: A fixed-point design and simulation environment. In Proceedings of the Conference on Design, Automation and Test in Europe, DATE '98, pages 429-435, 1998. Google Scholar
  22. Ki-Il Kum, Jiyang Kang, and Wonyong Sung. AUTOSCALER for C: an optimizing floating-point to integer C program converter for fixed-point digital signal processors. IEEE Trans. Circuits Syst. II. Analog Digit. Signal Process., 47(9):840-848, September 2000. URL:
  23. Cindy Rubio-González et al. Precimonious: Tuning assistant for floating-point precision. In Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, SC '13, pages 27:1-27:12, November 2013. URL:
  24. Jack Shandle. Field-Oriented Control of Small DC Motors put Drones on a Rising Flight Path, 2015. Accessed November 28, 2020. URL:
  25. C. Silvano et al. The antarex tool flow for monitoring and autotuning energy efficient hpc systems. In 2017 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS), pages 308-316, 2017. URL:
  26. N. Simon, D. Menard, and O. Sentieys. ID.Fix-infrastructure for the design of fixed-point systems. In University Booth of the Conference on Design, Automation and Test in Europe (DATE), volume 38, 2011. URL:
  27. Phillip Stanley-Marbell, Armin Alaghi, Michael Carbin, Eva Darulova, Lara Dolecek, Andreas Gerstlauer, Ghayoor Gillani, Djordje Jevdjic, Thierry Moreau, Mattia Cacciotti, Alexandros Daglis, Natalie Enright Jerger, Babak Falsafi, Sasa Misailovic, Adrian Sampson, and Damien Zufferey. Exploiting errors for efficiency: A survey from circuits to applications. ACM Computing Surveys, 53(3), June 2020. URL:
  28. Andrew Stone, John Dennis, and Michelle Strout. Establishing a miniapp as a programmability proxy. In Proceedings of the 17th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP '12, page 333–334, New York, NY, USA, 2012. Association for Computing Machinery. URL:
  29. Xiaoli Sun, Zhengguo Li, Xiaolin Wang, and Chengjiang Li. Technology development of electric vehicles: A review. Energies, 13(1):90, December 2019. URL:
  30. I. Takahashi and T. Noguchi. A new quick-response and high-efficiency control strategy of an induction motor. IEEE Transactions on Industry Applications, IA-22(5):820-827, 1986. URL:
  31. Jack Volder. The CORDIC computing technique. In Papers presented at the the March 3-5, 1959, western joint computer conference, pages 257-261, 1959. Google Scholar
  32. Fengxiang Wang, Zhenbin Zhang, Xuezhu Mei, José Rodríguez, and Ralph Kennel. Advanced control strategies of induction machine: Field oriented control, direct torque control and model predictive control. Energies, 11(1):120, 2018. Google Scholar
  33. V. Yaramasu, A. Dekka, M. J. Durán, S. Kouro, and B. Wu. PMSG-based wind energy conversion systems: survey on power converters and controls. IET Electric Power Applications, 11(6):956-968, 2017. URL:
  34. Serif Yesil, Ismail Akturk, and Ulya R. Karpuzcu. Toward dynamic precision scaling. IEEE Micro, 38(4):30-39, July 2018. URL:
  35. Tomofumi Yuki. Understanding PolyBench/C 3.2 kernels. In International workshop on Polyhedral Compilation Techniques (IMPACT), 2014. Google Scholar