[MontelLUG] Uso anormale di CPU da parte di un programma in Processing (Java)

Diego diego.ml a zoho.com
Mer 20 Dic 2017 11:20:23 CET


On venerdì 8 dicembre 2017 16:50:02 CET Samuele via montellug wrote:
> Continuano le mie disavventure con Java.
> Ho fatto due programmini in processing che girano su un rpi 3. Nulla di
> complicato.
> Sul pc fisso, l'uso di cpu è bassissimo.
> Sulla rpi, partono con cpu al 100% e dopo alcune ore si abbassa a
> livelli normali del 5-10%. Non sono ancora riuscito a determinare le
> tempistiche precise.
> C'è un programma che legge dati da un file di testo e spara pacchetti
> udp all'altro. Quando ha scorso tutto il file, riparte dall'inizio. Un
> ciclo dura 4-5 minuti.
> L'altro programma, riceve questi pacchetti, fa su un po' di conti e poi
> spara altri pacchetti UDP ad un microcontrollore.
> 
> A casa mia, un programma se durante l'esecuzione dell'algoritmo pianta
> la cpu, lo fa ogni volta che viene eseguito, non smette dopo qualche
> ora. Ma qui c'è di mezzo la Java VM con cui non ho ancora iniziato a
> litigare.
> 
> Idee?

Se il programma è tuo è facile vedere quali thread stanno facendo cosa (anche 
tramite debug remoto), ed eventualmente mettere in pausa quello "cattivo" per 
vedere se il consumo CPU scende.

CPU al 100% significa single thread (un core oberato, gli altri si grattano) o 
100% multithread (tutti i core sono in ginocchio)?

htop in modalità visualizzazione thread cosa dice?

Stai usando OpenJDK in entrambe le macchine?

Ciao,
Diego che non sopporta si spari a zero sulla JVM senza cognizione di causa




Maggiori informazioni sulla lista montellug