Skip to main content

Introduction to Optimization Under Uncertainty Techniques for High-Performance Multicore Embedded Systems Compilation

  • Chapter
  • First Online:
Computational Intelligence in Digital and Network Designs and Applications
  • 686 Accesses

Abstract

The compilation process design for massively parallel multicore-embedded architectures requires solving a number of difficult optimization problems, nowadays solved mainly using deterministic approaches. However, one of the main characteristics of these systems is the presence of uncertain data, such as the execution times of the tasks. The authors consider that the embedded systems design is one of the major domains for which applying optimization under uncertainty is legitimate and highly beneficial. This chapter introduces the most suitable techniques from the field of optimization under uncertainty for the design of compilation chains and for the resolution of the associated optimization problems.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 54.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    An assumption that can be in practice checked, to some extent, using static program analysis techniques. An assumption which also relies reasonably on the expertise of test engineers in terms of designing validation cases representative of real-world system operations.

  2. 2.

    A quadratic constraint is a constraint of type: \(\alpha _i^Tx + \alpha _i \ge \Vert B_i x+ b_i \Vert , \; \forall i=1,\ldots ,M\) with \(\alpha _i\) fixed reals, \(a_i\) and \(b_i\) fixed vectors, \(B_i\) fixed matrices and \(\Vert .\Vert \) standing for the usual Euclidean norm.

References

  1. Aringhieri, R.: Solving Chance-constrained Programs Combining Tabu Search and Simulation, pp. 30–41. Springer, Berlin (2004)

    MATH  Google Scholar 

  2. Aubry, P., Beaucamps, P.E., Blanc, F., Bodin, B., Carpov, S., Cudennec, L., David, V., Dore, P., Dubrulle, P., Dupont, B.d.D., Galea, F., Goubier, T., Harrand, M., Jones, S., Lesage, J., Louise, S., Chaisemartin, N., Nguyen, T., Raynaud, H., Sirdey, R.: Extended cyclostatic dataflow program compilation and execution for an integrated manycore processor. In: Proceedings of the First International Workshop on Architecture, Languages, Compilation and Hardware Support for Emerging Manycore Systems (ALCHEMY 2013), Barcelona, Spain, pp. 1624–1633 (2013)

    Google Scholar 

  3. Bell, S., Edwards, B., Amann, J., Conlin, R., Joyce, K., Leung, V., MacKay, J., Reif, M., Bao, L., Brown, J., Mattina, M., Miao, C.C., Ramey, C., Wentzlaff, D., Anderson, W., Berger, E., Fairbanks, N., Khan, D., Montenegro, F., Stickney, J., Zook, J.: TILE64 - processor: a 64-core soc with mesh interconnect. In: IEEE International Solid-State Circuits Conference, ISSCC 2008. Digestof Technical Papers, pp. 88–598 (2008)

    Google Scholar 

  4. Bellman, R.E., Zadeh, L.A.: Decision-making in a fuzzy environment. Manag. Sci. 17(4), B-141–B-164 (1970)

    Article  MathSciNet  Google Scholar 

  5. Ben-Ameur, W., Kerivin, H.: Routing of uncertain traffic demands. Optim. Eng. 6(3), 283–313 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  6. Ben-Ameur, W., Zotkiewicz, M.: Robust routing and optimal partitioning of a traffic demand polytope. Int. Trans. Oper. Res. 18(3), 307–333 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  7. Ben-Tal, A., Nemirovski, A.: Robust solutions of linear programming problems contaminated with uncertain data. Math. Program. 88, 411–424 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  8. Ben-Tal, A., Nemirovski, A.: Robust optimization: methodology and applications. Math. Program. 92(3), 453–480 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  9. Ben-Tal, A., Nemirovski, A.: On safe tractable approximations of chance-constrained linear matrix inequalities. Math. Oper. Res. 34, 1–25 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  10. Benini, L., Flamand, E., Fuin, D., Melpignano, D.: P2012: building an ecosystem for a scalable, modular and high-efficiency embedded computing accelerator. In: Design, Automation Test in Europe Conference Exhibition (DATE), 2012, pp. 983–987 (2012)

    Google Scholar 

  11. Beraldi, P., Ruszczynski, A.: Beam search heuristic to solve stochastic integer problems under probabilistic constraints. Eur. J. Oper. Res. 167(1), 35–47 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  12. Bertsimas, D., Nohadani, O.: Robust optimization with simulated annealing. J. Glob. Optim. 48, 323–334 (2010). doi:10.1007/s10898-009-9496-x

  13. Bertsimas, D., Sim, M.: The price of robustness. Oper. Res. 52(1), 35–53 (2004). doi:10.1287/opre.1030.0065

    Article  MathSciNet  Google Scholar 

  14. Bilsen, G., Engels, M., Lauwereins, R., Peperstraete, J.: Cyclo-static data flow. In: 1995 International Conference on Acoustics, Speech, and Signal Processing (ICASSP-95), vol. 5, pp. 3255–3258 (1995)

    Google Scholar 

  15. Bilsen, G., Engels, M., Lauwereins, R., Peperstraete, J.: Cycle-static dataflow. IEEE Trans. Signal Process. 44(2), 397–408 (1996)

    Article  Google Scholar 

  16. Bodin, B., Munier Kordon, A., Dupont de Dinechin, B.: Periodic schedules for cyclo-static dataflow. In: ESTImedia, pp. 105–114 (2013)

    Google Scholar 

  17. Burns, A., Bernat, G., Broster, I.: A probabilistic framework for schedulability analysis. In: Proceedings of the Third International Conference on Embedded Software (EMSOFT 2003), pp. 1–15 (2003)

    Google Scholar 

  18. Calafiore, G., Campi, M.: Uncertain convex programs: randomized solutions and confidence levels. Math. Program. 102, 25–46 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  19. Calafiore, G., Campi, M.: The scenario approach to robust control design. IEEE Trans. Autom. Control 51(5), 742–753 (2006)

    Article  MathSciNet  Google Scholar 

  20. Campi, M., Garatti, S.: A sampling-and-discarding approach to chance-constrained optimization: feasibility and optimality. J. Optim. Theory Appl. 148(2), 257–280 (2011)

    Article  MathSciNet  Google Scholar 

  21. Carpov, S., Cudennec, L., Sirdey, R.: Throughput constrained parallelism reduction in cyclo-static dataflow applications. Procedia Comput. Sci. 18, 30–39 (2013)

    Article  Google Scholar 

  22. Carpov, S., Sirdey, R., Carlier, J., Nace, D.: Memory bandwidth-constrained parallelism dimensioning for embedded many-core microprocessors. In: CPAIOR10 Workshop on Combinatorial Optimization for Embedded System Design, Bologna, Italy (2010)

    Google Scholar 

  23. Charnes, A., Cooper, W.: Chance-constrained programming. Manag. Sci. 6, 73–89 (1959)

    Article  MathSciNet  MATH  Google Scholar 

  24. Chen, X., Sim, M., Sun, P.: A robust optimization perspective on stochastic programming. Oper. Res. 55(6), 1058–1071 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  25. Dantzig, G.: Linear programming under uncertainty. Manag. Sci. 1(3–4), 197–206 (1955)

    Article  MathSciNet  Google Scholar 

  26. Dentcheva, D., Prékopa, A., Ruszczynski, A.: Concavity and efficient points of discrete distributions in probabilistic programming. Math. Program. 89, 55–77 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  27. Dentcheva, D., Prékopa, A., Ruszczynski, A.: Bounds for probabilistic integer programming problems. Discret. Appl. Math. 124(1–3), 55–65 (2002)

    Article  MATH  Google Scholar 

  28. Devarakonda, M., Iyer, R.: Predictability of process resource usage: a measurement-based study on unix. Softw. Eng. IEEE Trans. 15(12), 1579–1586 (1989)

    Article  Google Scholar 

  29. Diaz, J., Garcia, D., Kanghee, K., Chang-Gun, L., Lo Bello, L., Lopez, J., Sang Lyul, M., Mirabella, O.: Stochastic analysis of periodic real-time systems. In: Real-Time Systems Symposium (RTSS 2002), pp. 289–300 (2002)

    Google Scholar 

  30. Dupont de Dinechin, B., Ayrignac, R., Beaucamps, P., Couvert, P., Ganne, B., Guironnet de Massas, P., Jacquet, F., Jones, S., Morey Chaisemartin, N., Riss, F., Strudel, T.: A clustered manycore processor architecture for embedded and accelerated applications. In: HPEC, pp. 1–6 (2013)

    Google Scholar 

  31. Efron, B., Tibshirani, R.: An Introduction to the Bootstrap. Taylor and Francis, Oxford (1994)

    Google Scholar 

  32. El Ghaoui, L., Oustry, F., Lebret, H.: Robust solutions to uncertain semidefinite programs. Siam J. Optim. 9(1), 33–52 (1998)

    Article  MATH  Google Scholar 

  33. Freund, R.F.: Optimal selection theory for superconcurrency. In: Proceedings of the 1989 ACM/IEEE Conference on Supercomputing, Supercomputing’89, pp. 699–703. ACM, New York (1989)

    Google Scholar 

  34. Gaivoronski, A., Lisser, A., Lopez, R., Xu, H.: Knapsack problem with probability constraints. J. Global Optim. 49, 397–413 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  35. Galea, F., Sirdey, R.: Méthode de cadencement d’applications flot de données cyclostatiques. Technical report, CEA LIST/DACLE/10-070 (2010)

    Google Scholar 

  36. Galea, F., Sirdey, R.: A parallel simulated annealing approach for the mapping of large process networks. In: IPDPS Workshop, pp. 1787–1792 (2012)

    Google Scholar 

  37. Gustafson, J.: Reevaluating Amdahl’s law. Commun. ACM 31(5), 532–533 (1988)

    Article  Google Scholar 

  38. Hanen, C., Munier, A.: Cyclic scheduling on parallel processors: an overview. In: Chrétienne, P., Coffman, E.G., Lenstra, J.K., Liu, Z. (eds.) Scheduling Theory and Its Applications. Wiley, New York (1994)

    Google Scholar 

  39. Hennessy, J.L., Patterson, D.A.: Computer Architecture: A Quantitative Approach, 3rd edn. Morgan Kaufmann Publishers Inc., San Francisco (2003)

    Google Scholar 

  40. Henrion, R., Strugarek, C.: Convexity of chance constraints with independent random variables. Comput. Optim. Appl. 41(2), 263–276 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  41. Hong, L., Yang, Y., Zhang, L.: Sequential convex approximations to joint chance constrained programs: a Monte Carlo approach. Oper. Res. 59(3), 617–630 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  42. Howard, J., Dighe, S., Hoskote, Y., Vangal, S., Finan, D., Ruhl, G., Jenkins, D., Wilson, H., Borkar, N., Schrom, G., Pailet, F., Jain, S., Jacob, T., Yada, S., Marella, S., Salihundam, P., Erraguntla, V., Konow, M., Riepen, M., Droege, G., Lindemann, J., Gries, M., Apel, T., Henriss, K., Lund-Larsen, T., Steibl, S., Borkar, S., De, V., Van Der Wijngaart, R., Mattson, T.: A 48-core ia-32 message-passing processor with dvfs in 45 nm cmos. In: IEEE International Solid-State Circuits Conference Digest of Technical Papers (ISSCC), pp. 108–109 (2010)

    Google Scholar 

  43. Iverson, M., Ozguner, F., Follen, G.: Run-time statistical estimation of task execution times for heterogeneous distributed computing. In: Proceedings of 5th IEEE International Symposium on High Performance Distributed Computing, pp. 263–270 (1996)

    Google Scholar 

  44. Kahn, G.: The semantics of simple language for parallel programming. In: IFIP Congress, pp. 471–475 (1974)

    Google Scholar 

  45. Khokhar, A.A., Prasanna, V.K., Shaaban, M.E., Wang, C.L.: Heterogeneous computing: challenges and opportunities. Computer 26(6), 18–27 (1993)

    Article  Google Scholar 

  46. Klopfenstein, O.: Optimisation robuste de réseaux de télécommunications. Ph.D. thesis, Orange Labs, Laboratoire Heudiasyc, UMR CNRS 6599, Université de Technologie de Compiègne (2008)

    Google Scholar 

  47. Lee, E., Parks, T.: Dataflow process networks. Proc. IEEE 83(5), 773–801 (1995)

    Article  Google Scholar 

  48. Lee, J., Shin, I., Easwaran, A.: Online robust optimization framework for QoS guarantees in distributed soft real-time systems. In: Proceedings of the tenth ACM International Conference on Embedded Software, EMSOFT’10, pp. 89–98. New York (2010)

    Google Scholar 

  49. Lemerre, M., David, V., Aussagues, C., Vidal-Naquet, G.: Equivalence between schedule representations: theory and applications. In: Real-Time and Embedded Technology and Applications Symposium, RTAS’08, pp. 237–247. IEEE (2008). doi:10.1109/RTAS.2008.17

  50. Li, P., Wendt, M., Wozny, G.: Robust model predictive control under chance constraints. Comput. Chem. Eng. 24(2–7), 829–834 (2000)

    Article  Google Scholar 

  51. Lombardi, M., Milano, M., Ruggiero, M., Benini, L.: Stochastic allocation and scheduling for conditional task graphs in multiprocessor systems-on-chip. J. Sched. 13, 315–345 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  52. Loughlin, D.H., Ranjithan, S.: Chance-constrained genetic algorithms. In: GECCO-99: Proceedings of the Genetic and Evolutionary Computation Conference, pp. 369–376 (1999)

    Google Scholar 

  53. Louise, S.: The future of programming embedded systems: methods for timing or for performance support. HDR, EDIPS, Paris-Sud, France (2014)

    Google Scholar 

  54. Luedtke, J., Ahmed, S.: A sample approximation approach for optimization with probabilistic constraints. SIAM J. Optim. 19(2), 674–699 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  55. Manolache, S., Eles, P., Peng, Z.: Memory and time-efficient schedulability analysis of task sets with stochastic execution time. In: 24th Euromicro Conference on Real-Time Systems, pp. 0019 (2001)

    Google Scholar 

  56. Mazouz, A., Touati, S.A.A., Barthou, D.: Study of variations of native program execution times on multi-core architectures. In: CISIS, pp. 919–924 (2010)

    Google Scholar 

  57. Miller, B., Wagner, H.: Chance constrained programming with joint constraints. Oper. Res. 13(6), 930–945 (1965)

    Article  MATH  Google Scholar 

  58. Nemirovski, A., Shapiro, A.: Convex approximations of chance constrained programs. SIAM J. Optim. 17(4), 969–996 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  59. Optimization, G.: Gurobi—state of art mathematical programming solver (2014). http://www.gurobi.com/products/gurobi-optimizer/gurobi-overview

  60. Pagnoncelli, B.K., Ahmed, S., Shapiro, A., Pardalos, P.M.: Sample average approximation method for chance constrained programming: theory and applications. J. Optim. Theory Appl. 142, 399–416 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  61. Pal, B., Gupta, S., Chakraborti, D.: A genetic algorithm based stochastic simulation approach to chance constrained interval valued multiobjective decision making problems. In: 2010 International Conference on Computing Communication and Networking Technologies (ICCCNT), pp. 1–7 (2010)

    Google Scholar 

  62. Prékopa, A.: Stochastic Programming. Kluwer Academic, Dordrecht (1995)

    Book  Google Scholar 

  63. Reistad, B., Gifford, D.K.: Static dependent costs for estimating execution time. SIGPLAN Lisp Pointers VI VII(3), 65–78 (1994)

    Article  Google Scholar 

  64. Rockafellar, R.T., Uryasev, S.: Optimization of conditional value-at-risk. J. Risk 2, 21–41 (2000)

    Google Scholar 

  65. Soyster, A.L.: Convex programming with set-inclusive constraints and applications to inexact linear programming. Oper. Res. 21(5), 1154–1157 (1973)

    Article  MathSciNet  MATH  Google Scholar 

  66. Stan, O., Sirdey, R., Carlier, J., Nace, D.: A heuristic algorithm for stochastic partitioning of process networks. In: Proceedings of the 16th IEEE International Conference on System Theory, Control and Computing (ICSTCC), pp. 1–6 (2012)

    Google Scholar 

  67. Stan, O., Sirdey, R., Carlier, J., Nace, D.: A GRASP for placement and routing of dataflow process networks on manycore architectures. In: 3PGCIC, pp. 219–226 (2013)

    Google Scholar 

  68. Stan, O., Sirdey, R., Carlier, J., Nace, D.: The robust binomial approach to chance-constrained optimization problems with application to stochastic partitioning of large process networks. J. Heuristics 20(3), 261–290 (2014)

    Article  Google Scholar 

  69. Tanner, M.W., Beier, E.B.: A general heuristic method for joint chance-constrained stochastic programs with discretely distributed parameters (2007). http://www.optimization-online.org/DB_FILE/2007/08/1755.pdf

  70. UTK, ORNL: Netlib repository (2014). http://www.netlib.org/

  71. Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat, G., Ferdinand, C., Heckmann, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., Stenström, P.: The worst-case execution-time problem: overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst. 7(3), 36:1–36:53 (2008)

    Article  Google Scholar 

  72. Xu, H., Caramanis, C., Mannor, S.: Optimization under probabilistic envelope constraints. Oper. Res. 60(3), 682–699 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  73. Yang, J., Ahmad, I., Ghafoor, A.: Estimation of execution times on heterogeneous supercomputer architectures. In: International Conference on Parallel Processing, (ICPP 1993), vol. 1, pp. 219–226 (1993)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Oana Stan .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Stan, O., Sirdey, R. (2015). Introduction to Optimization Under Uncertainty Techniques for High-Performance Multicore Embedded Systems Compilation. In: Fakhfakh, M., Tlelo-Cuautle, E., Siarry, P. (eds) Computational Intelligence in Digital and Network Designs and Applications. Springer, Cham. https://doi.org/10.1007/978-3-319-20071-2_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-20071-2_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-20070-5

  • Online ISBN: 978-3-319-20071-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics