EmpezarEmpieza gratis

Ingresos del microbenchmark

Trabajas como Analista de Datos para un vendedor online. Has consultado los datos de ventas de diferentes productos vendidos durante un mes. Esto está disponible en tu espacio de trabajo en forma de lista, ls_sales. Cada elemento de esta lista es un vector de ingresos para un producto determinado.

Te gustaría ver cómo crecían los ingresos día a día. Esto significa calcular una suma acumulativa. Base R tiene una función llamada cumsum() para hacer el trabajo. Pero te gustaría ver si la paralelización puede ayudar. Quieres aplicar cumsum() a cada elemento de ls_sales secuencialmente y en paralelo y comparar los resultados. Se han cargado para ti los paquetes parallel y microbenchmark.

Este ejercicio forma parte del curso

Programación paralela en R

Ver curso

Instrucciones del ejercicio

  • Pasa las versiones secuencial y paralela como argumentos a una llamada a microbenchmark().
  • Genera un clúster con todos los núcleos disponibles menos dos.
  • Utiliza el clúster para aplicar cumsum() a ls_sales en paralelo utilizando parLapply().
  • Detén el clúster una vez finalizado el cálculo.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# Pass the code to microbenchmark
___
  
  "lapply" = lapply(ls_sales, cumsum),
  
  "parLapply" = {
    # Make a cluster of all cores minus two
    cluster <- ___
    # Use cluster to apply in parallel
    parLapply(cluster, ___, ___)
    # Stop cluster
    ___
  },
  times = 3
___
Editar y ejecutar código