Bonjour,
Bravo pour ce logiciel pratique et efficace!
Mais tout d'abord une petite présentation:
Je travaille dans le domaine du calcul scientifique, spécialisé dans les simulations de crash test.
J'utilise des stations de travail Windows Seven 64 avec 12 ou 16 coeurs (bi proc X5680 et bi proc E5-2687W). Hyperthreading est activé, donc Windows montre 24 ou 32 coeurs. Le logiciel de calcul est fortement parallèlisé, et les calculs sont lancés en MPI (c'est à dire 1 calcul lancé sur 12 coeurs = 12 process)
Sans BPM, si je lance un calcul sur 12, Windows réparti les 12 process sur les 24 qu'il voit de façon aléatoire, ce qui n'est pas efficace. J'utilise donc la fonction magique "répartir chaque instance sur un CPU différent" de BPM v3.4.3.3.
Ça marche très bien sur la machine 12 coeurs, mais pas sur celle de 16: dès que je coche tous les CPU avec l'option ci-dessus, BPM plante (voir message). Le contournement que j'ai trouvé consiste à cocher 31 cpu et non 32.
Rapport de crash:
[18/07/2012 14:15:47] CRASH FILE - Bill2's Process Manager v3.4.3.3
[18/07/2012 14:15:47.347]
######################################################################
SVP, merci de poster ce rapport de crash sur le forum ()
ou de l'envoyer à l'adresse suivante : ()
Pensez à indiquer un maximum d'infos sur les conditions du crash (manip en cours, etc.)
######################################################################
[18/07/2012 14:15:47.347] ========== Environnement informations
[18/07/2012 14:15:47.347] OS: Microsoft Windows NT 6.1.7601 Service Pack 1
[18/07/2012 14:15:47.347] Number of CPU: 32
[18/07/2012 14:15:49.591] CPU Model: Intel(R) Xeon(R) CPU E5-2687W 0 @ 3.10GHz
[18/07/2012 14:15:49.591] PId:3988
[18/07/2012 14:15:49.591] ==========
[18/07/2012 14:15:49.591] Unhandled Error : La valeur était trop grande ou trop petite pour un Int32.
[18/07/2012 14:15:49.606] Method : System.OverflowException: La valeur était trop grande ou trop petite pour un Int32.
à System.Convert.ToInt32(Double value)
à Process_Manager.Lancement.GetTabCycleFromAffinite(String NomExe, Int32 Affinite, Boolean AffiniteAuto)
à Process_Manager.Lancement.ApplyRules(Boolean ForceApplication, List`1 RulesToApply)
à Process_Manager.PM_Rules.LoadRulesToCheckFromXML(String IdNodeToShow)
à Process_Manager.Module_GestionXML_GroupRules.UpdateRuleXML(PM_Rule ZeRule, String IdGroup, Boolean IsRuleByDefault)
à Process_Manager.FenetrePrincipale.Template_click(Object Sender, EventArgs e)
à System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
à System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
à System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
à System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
à System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
à System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.ToolStrip.WndProc(Message& m)
à System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
[18/07/2012 14:15:49.606] Method Caller : ToInt32
[18/07/2012 14:15:55.312]
[18/07/2012 14:15:55.312] ENDING CRASH FILE - Bill2's Process Manager v3.4.3.3
[18/07/2012 14:15:57.898]
######################################################################
SVP, merci de poster ce rapport de crash sur le forum ()
ou de l'envoyer à l'adresse suivante : ()
Pensez à indiquer un maximum d'infos sur les conditions du crash (manip en cours, etc.)
######################################################################
[18/07/2012 14:15:57.898] ========== Environnement informations
[18/07/2012 14:15:57.898] OS: Microsoft Windows NT 6.1.7601 Service Pack 1
[18/07/2012 14:15:57.898] Number of CPU: 32
[18/07/2012 14:16:00.127] CPU Model: Intel(R) Xeon(R) CPU E5-2687W 0 @ 3.10GHz
[18/07/2012 14:16:00.127] PId:4692
[18/07/2012 14:16:00.127] ==========
[18/07/2012 14:16:00.127] Unhandled Error : La valeur était trop grande ou trop petite pour un Int32.
[18/07/2012 14:16:00.127] Method : System.OverflowException: La valeur était trop grande ou trop petite pour un Int32.
à System.Convert.ToInt32(Double value)
à Process_Manager.Lancement.GetTabCycleFromAffinite(String NomExe, Int32 Affinite, Boolean AffiniteAuto)
à Process_Manager.Lancement.ApplyRules(Boolean ForceApplication, List`1 RulesToApply)
à Process_Manager.PM_Processes.UpdateCPUUsage()
à Process_Manager.Lancement.TimerGetProcessesInfos_Tick(Object sender, EventArgs e)
à System.Windows.Forms.Timer.OnTick(EventArgs e)
à System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
[18/07/2012 14:16:00.127] Method Caller : ToInt32
[18/07/2012 14:16:07.842]
[18/07/2012 14:16:07.842] ENDING CRASH FILE - Bill2's Process Manager v3.4.3.3
[18/07/2012 14:16:10.398]
######################################################################
SVP, merci de poster ce rapport de crash sur le forum ()
ou de l'envoyer à l'adresse suivante : ()
Pensez à indiquer un maximum d'infos sur les conditions du crash (manip en cours, etc.)
######################################################################
[18/07/2012 14:16:10.398] ========== Environnement informations
[18/07/2012 14:16:10.398] OS: Microsoft Windows NT 6.1.7601 Service Pack 1
[18/07/2012 14:16:10.414] Number of CPU: 32
[18/07/2012 14:16:12.611] CPU Model: Intel(R) Xeon(R) CPU E5-2687W 0 @ 3.10GHz
[18/07/2012 14:16:12.611] PId:4972
[18/07/2012 14:16:12.611] ==========
[18/07/2012 14:16:12.611] Unhandled Error : La valeur était trop grande ou trop petite pour un Int32.
[18/07/2012 14:16:12.611] Method : System.OverflowException: La valeur était trop grande ou trop petite pour un Int32.
à System.Convert.ToInt32(Double value)
à Process_Manager.Lancement.GetTabCycleFromAffinite(String NomExe, Int32 Affinite, Boolean AffiniteAuto)
à Process_Manager.Lancement.ApplyRules(Boolean ForceApplication, List`1 RulesToApply)
à Process_Manager.PM_Processes.UpdateCPUUsage()
à Process_Manager.Lancement.TimerGetProcessesInfos_Tick(Object sender, EventArgs e)
à System.Windows.Forms.Timer.OnTick(EventArgs e)
à System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
[18/07/2012 14:16:12.611] Method Caller : ToInt32
[18/07/2012 14:16:16.56]
[18/07/2012 14:16:16.56] ENDING CRASH FILE - Bill2's Process Manager v3.4.3.3
[18/07/2012 14:16:56.745]
######################################################################
SVP, merci de poster ce rapport de crash sur le forum ()
ou de l'envoyer à l'adresse suivante : ()
Pensez à indiquer un maximum d'infos sur les conditions du crash (manip en cours, etc.)
######################################################################
[18/07/2012 14:16:56.745] ========== Environnement informations
[18/07/2012 14:16:56.745] OS: Microsoft Windows NT 6.1.7601 Service Pack 1
[18/07/2012 14:16:56.745] Number of CPU: 32
[18/07/2012 14:16:58.958] CPU Model: Intel(R) Xeon(R) CPU E5-2687W 0 @ 3.10GHz
[18/07/2012 14:16:58.958] PId:4796
[18/07/2012 14:16:58.958] ==========
[18/07/2012 14:16:58.958] Unhandled Error : La valeur était trop grande ou trop petite pour un Int32.
[18/07/2012 14:16:58.958] Method : System.OverflowException: La valeur était trop grande ou trop petite pour un Int32.
à System.Convert.ToInt32(Double value)
à Process_Manager.Lancement.GetTabCycleFromAffinite(String NomExe, Int32 Affinite, Boolean AffiniteAuto)
à Process_Manager.Lancement.ApplyRules(Boolean ForceApplication, List`1 RulesToApply)
à Process_Manager.PM_Processes.UpdateCPUUsage()
à Process_Manager.Lancement.TimerGetProcessesInfos_Tick(Object sender, EventArgs e)
à System.Windows.Forms.Timer.OnTick(EventArgs e)
à System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
[18/07/2012 14:16:58.958] Method Caller : ToInt32
[18/07/2012 14:17:14.388]
[18/07/2012 14:17:14.388] ENDING CRASH FILE - Bill2's Process Manager v3.4.3.3
[18/07/2012 14:23:13.162]
######################################################################
SVP, merci de poster ce rapport de crash sur le forum ()
ou de l'envoyer à l'adresse suivante : ()
Pensez à indiquer un maximum d'infos sur les conditions du crash (manip en cours, etc.)
######################################################################
[18/07/2012 14:23:13.162] ========== Environnement informations
[18/07/2012 14:23:13.162] OS: Microsoft Windows NT 6.1.7601 Service Pack 1
[18/07/2012 14:23:13.162] Number of CPU: 32
[18/07/2012 14:23:15.377] CPU Model: Intel(R) Xeon(R) CPU E5-2687W 0 @ 3.10GHz
[18/07/2012 14:23:15.377] PId:4752
[18/07/2012 14:23:15.377] ==========
[18/07/2012 14:23:15.377] Unhandled Error : La valeur était trop grande ou trop petite pour un Int32.
[18/07/2012 14:23:15.377] Method : System.OverflowException: La valeur était trop grande ou trop petite pour un Int32.
à System.Convert.ToInt32(Double value)
à Process_Manager.Lancement.GetTabCycleFromAffinite(String NomExe, Int32 Affinite, Boolean AffiniteAuto)
à Process_Manager.Lancement.ApplyRules(Boolean ForceApplication, List`1 RulesToApply)
à Process_Manager.PM_Rules.LoadRulesToCheckFromXML(String IdNodeToShow)
à Process_Manager.Module_GestionXML_GroupRules.UpdateRuleXML(PM_Rule ZeRule, String IdGroup, Boolean IsRuleByDefault)
à Process_Manager.FenetreRegle.btOK_Click(Object sender, EventArgs e)
à System.Windows.Forms.Control.OnClick(EventArgs e)
à System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.ButtonBase.WndProc(Message& m)
à System.Windows.Forms.Button.WndProc(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
[18/07/2012 14:23:15.377] Method Caller : ToInt32
De façon aléatoire (sur n'importe quelle machine), j'ai aussi le problème suivant: Au lancement du calcul, message d'erreur dans ma fenêtre DOS disant que Windows n'a pas put alloué les processeurs. Dans ce cas il me faut réessayer et ça marche (sauf si j'ai programmé un départ différé...)