¿Dónde debo almacenar los files de la database PGO?

He estado estudiando el uso de Optimización guiada por perfil en Visual C ++ 2013. Estoy contento con la ejecución del set de capacitación utilizando diferentes escenarios como un paso manual, pero me gustaría que la compilation optimizada final y el enlace funcionen en nuestro server de compilation CI.

Con esto en mente, ¿dónde está el mejor lugar para almacenar las bases de datos de perfiles de PGO? Almacenarlos en control de versiones (Git en nuestro caso) es el lugar más conveniente, pero soy consciente de que son files binarys del order de decenas, posiblemente incluso cientos, de megabytes y que no necesariamente almacenarán bien en una fuente sistema de control.

Alternativamente, ¿existe una mejor solución o mejores prácticas para integrar PGO en nuestras comstackciones automáticas?

Tiene múltiples opciones aquí, puede elegir una de ellas teniendo en count las compensaciones.

  • ¿Utiliza PGO para todo el código base, o para algunos hotspots o modules? ¿Con qué frecuencia actualiza las bases de datos?
  • ¿Es eso un gran problema liberar algo con bases de datos inapropiadas de PGO?
  • ¿Qué tan grande es su proyecto y qué tan grande puede ser en el peor de los casos?
  • ¿Es aceptable almacenar bases de datos PGO en control de código fuente en este peor caso?

A través de sus respuestas, puede crear una ruta para usted mismo.

Si no actualiza las bases de datos de PGO con demasiada frecuencia y si los tamaños binarys no arruinarán su proyecto, puede almacenarlos en el control de versiones.

Si los regenera para cada commit, puede ponerlos en un repository separado que incluya bases de código real commit id (en el que se crean las bases de datos de perfil PGO) como un post de confirmación

O si no los genera con demasiada frecuencia, y cuando regresa a una confirmación específica, está bien regenerar las bases de datos, puede que no las almacene, simplemente ponga en la máquina de creación CI.

O puede hacer otra combinación en torno a estas opiniones 🙂

Intereting Posts