OpenGL max core vs mas compatible profile

Bonjour,
j’ai besoin d’utiliser un programme sous OpenGL 3.2 via la commande :
MESA_GL_VERSION_OVERRIDE=3.2 {command_to_launch_program}
J’ai voulu vérifier la compatibilité avant de lancer cette commande. J’obtiens le résultat suivant :

$ glxinfo | grep 'version'
server glx version string: 1.4
client glx version string: 1.4
    GLX version: 1.4
        Max core profile version: 4.3
        Max compat profile version: 3.1
        Max GLES1 profile version: 1.1
        Max GLES[23] profile version: 3.1
    OpenGL core profile version string: 4.3 (Core Profile) Mesa 20.3.5
    OpenGL core profile shading language version string: 4.30
    OpenGL version string: 3.1 Mesa 20.3.5
    OpenGL shading language version string: 1.40
    OpenGL ES profile version string: OpenGL ES 3.1 Mesa 20.3.5
    OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
        GL_EXT_separate_shader_objects, GL_EXT_shader_implicit_conversions, 

J’ai donc plusieurs questions :

  • Quelle est la différence entre « Max core Profile » et « Max compatible profile » ?
  • Pourquoi ma version GLX est-elle de 1.4 alors qu’apparemment elle peut monter à 3.1 sans problème ?
  • Qu’est-ce que je risque si je lance mon programme en forçant le passage à OpenGL 3.2 malgré un Max compatible profile de 3.1 (sachant que mon Max core profile est de 4.3) ?
  • Comment puis-je rendre mon Max compatible profile supérieur ou égal à 3.2 ?

Merci d’avance pour vos conseils,
bonne journée,
Mathieu.