WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Multicore-DLL wird nur auf einem Core ausgeführt.

 

TS
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 20.02.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.02.2012, 11:19     Titel: Multicore-DLL wird nur auf einem Core ausgeführt.
  Antworten mit Zitat      
Hallo,

ich habe extern (in Labview) eine DLL geschrieben, welche ich in Matlab nutze. Wenn ich die DLL als Programm in Labview teste, nutzt sie alle 4 Kerne meines Rechners. Wird sie aber von MatLab aufgerufen, so zeigt der Taskmanager nur eine Auslastung von etwa 25 % an.
Muss ich da evt. bei Matlab noch etwas einstellen, so daß mehr Ressourcen freigegeben werden?
Habe auch schon "Matlabpool open 4" aus dem Parallelization-Toolkit probiert, (d.h. diese Codezeile vor dem Aufruf der Dll ins Skript eingefügt), doch es ändert nichts.
Private Nachricht senden Benutzer-Profile anzeigen


ChriX
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 12.02.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.02.2012, 12:24     Titel:
  Antworten mit Zitat      
Ich musste bei mir erst die Zahl der Kerne,die mir zur Verfügung stehen festlegen. Dazu musste ich in der Menüleiste unter "Parallel -> manage Configurations -> rechtsklick auf die Configuration -> Properties" und dort die Zahl der Kerne eingeben, danach funktionierte bei mir das Multicore-rechnen. Allerdings benutze ich keine DLL.

Viel Glück, vielleicht funktioniert es ja.
Private Nachricht senden Benutzer-Profile anzeigen
 
TS
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 20.02.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.02.2012, 14:55     Titel:
  Antworten mit Zitat      
Danke für den Tip. Daran liegt es aber nicht. Die Anzahl der "Worker" hatte ich schon auf 4 gestellt.
Private Nachricht senden Benutzer-Profile anzeigen
 
Super8film
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 57
Anmeldedatum: 13.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.11.2016, 15:06     Titel:
  Antworten mit Zitat      
Hast du eine Lösung?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 16.11.2016, 16:23     Titel: Re: Multicore-DLL wird nur auf einem Core ausgeführt.
  Antworten mit Zitat      
Hallo TS,

Die DLL wird ja nicht über Matlabs Parallel-Programming-Toolbox aufgerufen, sondern direkt, oder? Der Matlabpool hat deswegen wohl nichts damit zu tun, sondern ich denke, es ist ein Problem bei der Erstellung der DLL in LabView. Hilft Dir http://forums.ni.com/t5/LabVIEW/Lab.....p-Help-Needed/td-p/822273 weiter?

Zitat:
Wenn ich die DLL als Programm in Labview teste,

Was heißt das genau? Nutzt Du die kompilierte DLL oder anderen Code in LabView?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Super8film
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 57
Anmeldedatum: 13.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.11.2016, 17:28     Titel:
  Antworten mit Zitat      
Aber prinzipiell könnte man doch die s-function seperat laufen lassen und auf 4 Kerne aufteilen,oder? Ich orientiere mich hier dran https://de.mathworks.com/help/simul.....ulticore-programming.html
Private Nachricht senden Benutzer-Profile anzeigen
 
TS
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 20.02.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.11.2016, 20:41     Titel: lange her..
  Antworten mit Zitat      
Hallo,

hier ist nochmal der Fragesteller.

Ehrlich gesagt weiß ich gar nicht mehr genau, um was es damals im Detail ging.

Auf jeden Fall habe ich die DLL in compilierter Form in LabView getestet und da liefen die Threads parallel.
Private Nachricht senden Benutzer-Profile anzeigen
 
Super8film
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 57
Anmeldedatum: 13.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.11.2016, 08:53     Titel:
  Antworten mit Zitat      
hm ok schade.. ich blicke ehrlich gesagt gerade nicht mehr durch... Ist MultiCore für die Simulation auf den Desktop Rechner (z.B. SIL) für die Performance gut? Wenn ich http://blogs.mathworks.com/simulink.....l-time-multicore-systems/ richtig verstehe, dann nicht. Weiter unten steht dann

Zitat:
Teresa: How much speedup can you expect for rapid prototyping with concurrent execution?

Tunc: That really depends on how much concurrency is available in the model. We have seen examples of models sped up by a factor 2 when using three cores. If your model can be partitioned into several tasks, the speedup could be significant.


Ich müsste doch irgendetwas beobachten können... nur einfach langsamer werden wenn ich ein referenced model mache ist doch net alles...
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.