@@ -413,7 +413,10 @@ func format(sd: inout static_data, vd: inout variating_data) {
413413 }
414414 }
415415
416- vd. cluster_use [ i] /= Float ( vd. cluster_sums [ i] ) + vd. cluster_use [ i]
416+ let cluster_usg = Float ( vd. cluster_sums [ i] ) + vd. cluster_use [ i]
417+ if cluster_usg != 0 {
418+ vd. cluster_use [ i] /= cluster_usg
419+ }
417420 vd. cluster_use [ i] *= 100
418421 if i <= sd. cluster_core_counts. count- 1 {
419422 for iii in 0 ..< Int ( sd. cluster_core_counts [ i] ) {
@@ -471,24 +474,26 @@ func summary(sd: static_data, vd: variating_data, rd: inout render_data, rvd: in
471474 var ecpu_use : Float = 0
472475 var pcpu_use : Float = 0
473476 for (idx, cluster) in sd. complex_freq_channels. enumerated ( ) {
477+ let usg = vd. cluster_use [ idx]
478+
474479 if cluster. contains ( " ECPU " ) {
475- rd. ecpu. usage += vd . cluster_use [ idx ]
480+ rd. ecpu. usage += usg
476481 for (i, freq) in vd. core_freqs [ idx] . enumerated ( ) {
477482 rd. ecpu. freq += freq* ( vd. core_use [ idx] [ i] as! Float )
478483 ecpu_use += ( vd. core_use [ idx] [ i] as! Float )
479484 }
480485 // rd.ecpu.freq += vd.cluster_freqs[idx]
481486 ecpu += 1
482487 } else if cluster. contains ( " PCPU " ) {
483- rd. pcpu. usage += vd . cluster_use [ idx ]
488+ rd. pcpu. usage += usg
484489 for (i, freq) in vd. core_freqs [ idx] . enumerated ( ) {
485490 rd. pcpu. freq += freq* ( vd. core_use [ idx] [ i] as! Float )
486491 pcpu_use += ( vd. core_use [ idx] [ i] as! Float )
487492 }
488493 // rd.pcpu.freq += vd.cluster_freqs[idx]
489494 pcpu += 1
490495 } else if cluster. contains ( " GPU " ) {
491- rd. gpu. usage += vd . cluster_use [ idx ]
496+ rd. gpu. usage += usg
492497 rd. gpu. freq += vd. cluster_freqs [ idx]
493498 gpu += 1
494499 }
0 commit comments