[Resolved] Una delle quattro CPU al 100%

Please let our ADS show!

This sites offers only FREE software and it's supported by a few advertisement boxes (no intrusive popups).
Please:

  • disable your AdBlocker by adding CoolSoft website to whitelist
  • give the proper cookie consent
  • enable JavaScript for this website

This seconds wait is to let you update your browser configuration...

Ok, I've done the required changes... now show me your content!
!!! Please enable JavaScript !!!
Posts: 16
Joined: October 10, 2014 - 21:16
[Resolved] Una delle quattro CPU al 100%

Salve.
Ho notato un problema particolare che si verifica con VirtualMidiSynth in alcune condizioni.

Se piloto VMS con Karaoke 5 oppure con Miditrix succede che la CPU numero 1 (quindi la seconda CPU perchè contiamo da zero) schizza al 100%.

Questo succede con:

  • VMS ver. 2.13.8.0
  • Windows 10 64 bit
  • Miditrix ver. 1.27.0.1
  • Karaoke 5 ver. 50.08

Il processore (o il computer ) non c'entra nulla perchè lo stesso comportamento avviene uguale utilizzando una macchina con un vecchio dual core, in quel caso la seconda CPU schizza al 100%.

In Karaoke 5 è sufficiente mandare in play pure un file audio, non necessariamente un midi, per risolvere il consumo anomalo della CPU mentre invece con Miditrix è necessario mandare un messaggio di MIDI PANIC dall'apposito pulsante.

Da notare che nel caso di utilizzo simultaneo di Miditrix + Karaoke 5 bisogna fare entrambe le operazioni, diversamente il consumo della CPU non scende a valori normali.

Sono in contatto con il creatore di Karaoke 5 per capire cosa fa il suo programma all'avvio, in modo da avere una traccia da seguire per risolvere il problema.

Posts: 16
Joined: October 10, 2014 - 21:16
Re: Una delle quattro CPU al 100%

Per la precisione, da Miditrix bisogna inviare DUE VOLTE il messaggio MIDI PANIC attraverso l'apposito pulsante.

Posts: 16
Joined: October 10, 2014 - 21:16
Re: Una delle quattro CPU al 100%

A quanto pare non interessa a nessuno il mio problema, che nel frattempo ho comunque risolto, anche se non in modo molto elegante.

Posts: 2004
Joined: March 25, 2012 - 01:19
Re: Una delle quattro CPU al 100%
max fonico wrote:

Per la precisione, da Miditrix bisogna inviare DUE VOLTE il messaggio MIDI PANIC attraverso l'apposito pulsante.

Chiedo scusa per il ritardo ma… ho trovato la causa del problema!

VMS ha una coda ad alta efficienza per la gestione dei messaggi MIDI in ingresso.
Questa coda ha due modalità di funzionamento: FAST e SLOW, che si differenziano per la velocità di gestione dei messaggi in ingresso (e di conseguenza la CPU utilizzata).

Lo switch tra FAST e SLOW avviene in base alla velocità dei messaggi in arrivo; la FAST viene attivata solo quando serve, in modo da diminuire la latenza e svuotare più velocemente la coda…
All'apertura del device virtuale (quando un client MIDI si connette) la coda si avvia in modalità FAST; un “timer” conta i messaggi MIDI arrivati nell'unità di tempo e decide il cambio SLOW/FAST.

Il problema è dovuto al fatto che questo “timer” viene avviato all'arrivo del primo messaggio (cosa che accade di default per i client MIDI “standard”).
Miditrix, invece, apre il device VMS e lo tiene pronto in attesa di inoltrargli i messaggi dei propri clients (es: Karaoke5), quindi senza inviare alcun messaggio.
Questo spiega perchè mandando in play un MIDI la situazione si “normalizza”.
Il MIDI Panic ha lo stesso effetto.

Detto ciò, allego una beta con la fix.
Ti chiedo di confermarmi che il problema sia risolto in modo da poter includere la fix in una versione ufficiale.

Grazie per la pazienza e buona giornata

Attachments (Only registered users)
CoolSoft_VirtualMIDISynth_2.13.10-beta1.zip
Posts: 16
Joined: October 10, 2014 - 21:16
Re: Una delle quattro CPU al 100%

Tu ti scusi con me e mi ringrazi per la pazienza? Sono io che devo scusarmi con te e ringraziarti per tutto il lavoro che ci offri!
Come ho un minuto provo la beta e ti faccio sapere, poi a prescindere è giunto il momento di fare una donazione.
La mia soluzione poco elegante è stata fare un semplicissimo script batch che avvia miditrix, il quale a sua volta avvia VMS in automatico, e poi inviare sempre tramite il batch un messaggio di “MidiPanic” attraverso l'utility “Sendmidi ver.1.3.1” che si trova facilmente in rete.
Ho semplificato molto il processo, ma il succo è questo.

Posts: 2004
Joined: March 25, 2012 - 01:19
Re: Una delle quattro CPU al 100%
max fonico wrote:
…semplicissimo script batch che avvia miditrix, il quale a sua volta avvia VMS in automatico, e poi inviare sempre tramite il batch un messaggio di “MidiPanic”…

Ingegnoso 😉👍

Posts: 16
Joined: October 10, 2014 - 21:16
Re: Una delle quattro CPU al 100%

Buongiorno, rieccomi qui.
Effettivamente la beta sembra funzionare bene e non c'è più nessun problema di CPU, anzi FORSE adesso consuma pure leggermente di meno quando è in standby, ma non ne sono sicuro.
Intanto grazie, poi colgo l'occasione per chiederti una cosa che andrò a scrivere ovviamente nel thread ufficiale delle richieste e quindi eventualmente mi rispondi lì. Utilizzando più di una periferica di VMS (nel mio caso ne utilizzo 3) diventa scomodo aprire tutti i mixer, perchè il primo si apre da tastiera, ma gli altri bisogna aprirli a mano con il mouse. Si possono aggiungere altre scorciatoie da tastiera oppure semplicemente con la combinazione CTRL + ALT + M aprire direttamente tuti i mixer in funzione?

Posts: 2004
Joined: March 25, 2012 - 01:19
Re: Una delle quattro CPU al 100%
max fonico wrote:
…Effettivamente la beta sembra funzionare bene e non c'è più nessun problema di CPU…

Ottimo, allora integrerò le modifiche nella prossima versione ufficiale.
Grazie per il test…