Cargando…

An FPGA-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations

Several areas, such as physical and health sciences, require the use of matrices as fundamental tools for solving various problems. Matrices are used in real-life contexts, such as control, automation, and optimization, wherein results are expected to improve with increase of computational precision...

Descripción completa

Detalles Bibliográficos
Autores principales: Algredo-Badillo, Ignacio, Conde-Mones, José Julio, Hernández-Gracidas, Carlos Arturo, Morín-Castillo, María Monserrat, Oliveros-Oliveros, José Jacobo, Feregrino-Uribe, Claudia
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Public Library of Science 2020
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7304599/
https://www.ncbi.nlm.nih.gov/pubmed/32559235
http://dx.doi.org/10.1371/journal.pone.0234293
_version_ 1783548287117164544
author Algredo-Badillo, Ignacio
Conde-Mones, José Julio
Hernández-Gracidas, Carlos Arturo
Morín-Castillo, María Monserrat
Oliveros-Oliveros, José Jacobo
Feregrino-Uribe, Claudia
author_facet Algredo-Badillo, Ignacio
Conde-Mones, José Julio
Hernández-Gracidas, Carlos Arturo
Morín-Castillo, María Monserrat
Oliveros-Oliveros, José Jacobo
Feregrino-Uribe, Claudia
author_sort Algredo-Badillo, Ignacio
collection PubMed
description Several areas, such as physical and health sciences, require the use of matrices as fundamental tools for solving various problems. Matrices are used in real-life contexts, such as control, automation, and optimization, wherein results are expected to improve with increase of computational precision. However, special attention should be paid to ill-conditioned matrices, which can produce unstable systems; an inadequate handling of precision might worsen results since the solution found for data with errors might be too far from the one for data without errors besides increasing other costs in hardware resources and critical paths. In this paper, we make a wake-up call, using 2 × 2 matrices to show how ill-conditioning and precision can affect system design (resources, cost, etc.). We first demonstrate some examples of real-life problems where ill-conditioning is present in matrices obtained from the discretization of the operational equations (ill-posed in the sense of Hadamard) that model these problems. If these matrices are not handled appropriately (i.e., if ill-conditioning is not considered), large errors can result in the computed solutions to the systems of equations in the presence of errors. Furthermore, we illustrate the generated effect in the calculation of the inverse of an ill-conditioned matrix when its elements are approximated by truncation. We present two case studies to illustrate the effects on calculation errors caused by increasing or reducing precision to s digits. To illustrate the costs, we implemented the adjoint matrix inversion algorithm on different field-programmable gate arrays (FPGAs), namely, Spartan-7, Artix-7, Kintex-7, and Virtex-7, using the full-unrolling hardware technique. The implemented architecture is useful for analyzing trade-offs when precision is increased; this also helps analyze performance, efficiency, and energy consumption. By means of a detailed description of the trade-offs among these metrics, concerning precision and ill-conditioning, we conclude that the need for resources seems to grow not linearly when precision is increased. We also conclude that, if error is to be reduced below a certain threshold, it is necessary to determine an optimal precision point. Otherwise, the system becomes more sensitive to measurement errors and a better alternative would be to choose precision carefully, and/or to apply regularization or preconditioning methods, which would also reduce the resources required.
format Online
Article
Text
id pubmed-7304599
institution National Center for Biotechnology Information
language English
publishDate 2020
publisher Public Library of Science
record_format MEDLINE/PubMed
spelling pubmed-73045992020-06-19 An FPGA-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations Algredo-Badillo, Ignacio Conde-Mones, José Julio Hernández-Gracidas, Carlos Arturo Morín-Castillo, María Monserrat Oliveros-Oliveros, José Jacobo Feregrino-Uribe, Claudia PLoS One Research Article Several areas, such as physical and health sciences, require the use of matrices as fundamental tools for solving various problems. Matrices are used in real-life contexts, such as control, automation, and optimization, wherein results are expected to improve with increase of computational precision. However, special attention should be paid to ill-conditioned matrices, which can produce unstable systems; an inadequate handling of precision might worsen results since the solution found for data with errors might be too far from the one for data without errors besides increasing other costs in hardware resources and critical paths. In this paper, we make a wake-up call, using 2 × 2 matrices to show how ill-conditioning and precision can affect system design (resources, cost, etc.). We first demonstrate some examples of real-life problems where ill-conditioning is present in matrices obtained from the discretization of the operational equations (ill-posed in the sense of Hadamard) that model these problems. If these matrices are not handled appropriately (i.e., if ill-conditioning is not considered), large errors can result in the computed solutions to the systems of equations in the presence of errors. Furthermore, we illustrate the generated effect in the calculation of the inverse of an ill-conditioned matrix when its elements are approximated by truncation. We present two case studies to illustrate the effects on calculation errors caused by increasing or reducing precision to s digits. To illustrate the costs, we implemented the adjoint matrix inversion algorithm on different field-programmable gate arrays (FPGAs), namely, Spartan-7, Artix-7, Kintex-7, and Virtex-7, using the full-unrolling hardware technique. The implemented architecture is useful for analyzing trade-offs when precision is increased; this also helps analyze performance, efficiency, and energy consumption. By means of a detailed description of the trade-offs among these metrics, concerning precision and ill-conditioning, we conclude that the need for resources seems to grow not linearly when precision is increased. We also conclude that, if error is to be reduced below a certain threshold, it is necessary to determine an optimal precision point. Otherwise, the system becomes more sensitive to measurement errors and a better alternative would be to choose precision carefully, and/or to apply regularization or preconditioning methods, which would also reduce the resources required. Public Library of Science 2020-06-19 /pmc/articles/PMC7304599/ /pubmed/32559235 http://dx.doi.org/10.1371/journal.pone.0234293 Text en © 2020 Algredo-Badillo et al http://creativecommons.org/licenses/by/4.0/ This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/) , which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.
spellingShingle Research Article
Algredo-Badillo, Ignacio
Conde-Mones, José Julio
Hernández-Gracidas, Carlos Arturo
Morín-Castillo, María Monserrat
Oliveros-Oliveros, José Jacobo
Feregrino-Uribe, Claudia
An FPGA-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations
title An FPGA-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations
title_full An FPGA-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations
title_fullStr An FPGA-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations
title_full_unstemmed An FPGA-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations
title_short An FPGA-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations
title_sort fpga-based analysis of trade-offs in the presence of ill-conditioning and different precision levels in computations
topic Research Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7304599/
https://www.ncbi.nlm.nih.gov/pubmed/32559235
http://dx.doi.org/10.1371/journal.pone.0234293
work_keys_str_mv AT algredobadilloignacio anfpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT condemonesjosejulio anfpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT hernandezgracidascarlosarturo anfpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT morincastillomariamonserrat anfpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT oliverosoliverosjosejacobo anfpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT feregrinouribeclaudia anfpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT algredobadilloignacio fpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT condemonesjosejulio fpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT hernandezgracidascarlosarturo fpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT morincastillomariamonserrat fpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT oliverosoliverosjosejacobo fpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations
AT feregrinouribeclaudia fpgabasedanalysisoftradeoffsinthepresenceofillconditioninganddifferentprecisionlevelsincomputations