• Inicio

    Profesora:  Dra. Verónica Gil Costa (Universidad Nacional de San Luis y CONICET)
    Correlativas: Probabilidad y Estadística; conocimientos básicos de programación (ej: AyED1 o Introducción al a Computación)

    Evaluación: Entrega de trabajos prácticos.
    Carga horaria: 30 hs.  (6 clases teórico-prácticas de 5 hs. cada una)
    Puntaje: 2 puntos para Licenciatura y 1 punto para Doctorado.
    Fechas y lugares (en Pabellón 1 de Ciudad Universitaria, CABA):
     

    Parte 1:
    11/9 - Aula 13 - 12 a 17 hs
    12/9 - Laboratorio 6 - 13 a 18 hs
    13/9 - Laboratorio 6 - 12 a 17 hs

    Parte 2:
    30/9 - Laboratorio 2 - 13 a 18 hs
    1/10 - Laboratorio 6 - 13 a 18 hs
    2/10 - Laboratorio 6 - 12 a 17 hs

    DESCRIPCIÓN
    El objetivo es brindar y desarrollar conceptos avanzados y metodologías sobre el despliegue eficiente de aplicaciones de gran escala en diferentes infraestructuras de hardware. En particular aplicaciones sociales y de servicio de búsqueda.
    Actualmente los centros de datos deben ser dimensionados para proporcionar de manera eficiente una capacidad suficiente de cómputo para motores de búsqueda para la Web y aplicaciones sociales. Dichas aplicaciones son altamente dinámicas ya que requieren procesar grandes volúmenes de datos utilizando paralelismo sobre memoria compartida y distribuida. Esto presenta un problema para los ingenieros operadores de centros de datos y diseñadores de componentes de software y hardware, puesto que actualmente no existen herramientas capaces de considerar adecuadamente las complejidades respecto de predicción y evaluación del rendimiento computacional de estos sistemas complejos. Se trata de sistemas que son matemáticamente intratables y que por lo tanto su estudio requiere del uso de técnicas tales como simulación discreta alimentada por trazas de ejecución generadas por usuarios reales. Se trata de computación paralela conducida por el comportamiento (generalmente impredecible) de los usuarios.
    La metodología de Capacity Planning que se abordará durante el curso depende fuertemente de un marco experimental sobre el cual integrar trazas reales de usuarios, obtenidas por el pilotaje de aplicaciones sociales y de buscadores en escenarios de miles de usuarios. Se combinan además modelos basados en fórmulas de análisis operacional, simulaciones discretas y aprendizaje de máquina (Modelos supervisados: Regresión lineal, Redes bayesianas. Modelos no supervisados: Descubrimiento de clústers) que permitan estimar el rendimiento computacional de las aplicaciones por medio de sus características relevantes influyentes en los costos de ejecución y comunicación.

    PROGRAMA TENTATIVO:
    Unidad 1: Introducción a aplicaciones de gran escala. Complejidad y eficiencia. Definición de Problemas. Aplicaciones de gran escala. Aplicaciones de tiempo real. Buscadores Web y aplicaciones sociales.   
    Unidad 2: Introducción a Capacity Planning (CP). Metodología y pasos elementales en el planeamiento de capacidad. Metodologías de desarrollo de programas benchmarks. Enfoques de simulación discreta secuencial y paralelas para abordar el desarrollo de CP. Técnicas de estimación y evaluación del rendimiento y planeación de capacidad.  Estudio de diferentes aplicaciones con acceso a memoria secundaria e impacto en medidas de rendimiento.
    Unidad 3: Reducción del espacio de búsqueda del problema de CP. Técnicas basadas en métodos analíticos, metaheurísticos, y simulación combinado con aprendizaje máquina.

    BIBLIOGRAFÍA
    1. D. A. Menasce, V. A. Almeida, L. W. Dowdy, Performance by Design: Computer Capacity Planning, Prentice Hall, 2004
    2. M. Al-Fares, A. Loukissas, A. Vahdat, A scalable, commodity data center network architecture, in: SIGCOMM 38 (2008) 63-74.
    3. M. Arlitt, D. Krishnamurthy, J. Rolia, Characterizing the scalability of a large web-based shopping system, J. of ACM Trans. Internet Technol. 1 (2001) 44-69.
    4. J. Gao, Machine learning applications for data center optimization, in: Tech. Rep., Google (2014)
    5. Mauricio Marín, Veronica Gil Costa, Carolina Bonacic, Alonso Inostrosa-Psijas:
    Simulating Search Engines. Computing in Science and Engineering 19(1): 62-73 (2017)
    6. Erika Rosas, Nicolas Hidalgo, Veronica Gil Costa, Carolina Bonacic, Mauricio Marín, Hermes Senger, Luciana Arantes, Cesar A. C. Marcondes, Olivier Marin:
    Survey on Simulation for Mobile Ad-Hoc Communication for Disaster Scenarios. J. Comput. Sci. Technol. 31(2): 326-349 (2016)
    7. V. Formoso et al., "Analysis of Performance Evaluation Techniques for Large Scale Information Retrieval," Proc. Large-Scale Distributed Systems for Information Retrieval, 2013, pp. 215–226.
    8. V. Gil-Costa et al., "Modelling Search Engines Performance Using Coloured Petri Nets," Fundamenta Informaticae, 2014, pp. 1–28.
    9. V. Gil-Costa, J. Lobos, A. Inostrosa-Psijas, M. Marin, Capacity planning for vertical search engines: An approach based on coloured petri nets, in: ICATPN, 2012, pp. 288{307. 
    10. Mauricio Marin, Veronica Gil-Costa, Alonso Inostrosa-Psijasa and Carolina Bonacic. Hybrid capacity planning methodology for web search engines. Simulation Modelling Practice and Theory 2018 https://doi.org/10.1016/j.simpat.2018.09.016
    11. M. Marzolla, Libcppsim: A simula-like, portable process-oriented simulation library in C++, in: ESM, 2004.
    12. P. J. Denning, J. P. Buzen, The operational analysis of queueing network models, ACM Comput. Surv. 10 (3) (1978) 225{261.
    13. H. C. Tijms, Stochastic modelling and analysis: a computational approach, John Wiley & Sons, Inc., 1986.