processus time double after fews seconde

hi,

my application use android java JNI to process camera vidéo in real time. The C part use openCL and multicore threading with médiatek 9200+ and mali G715.

Something strange append with the application. After fews seconde of processing, 70-80 frames, i go from 60-70ms per frame to 140-160 per frame.

What i am doing :

1) i do some kernel to conver YUV and extract data

2) Then i procees the extracted data with CPU multicore threading(4 thread at the time) 7 time.

3) Then i use kernel again to extract data and send it back to Java.

If i remove all the CPU work, the GPU time remain stable between 20ms at the begining(70-80 frames)  to 40-45. But with the CPU work time increase dramaticly after 70-80 frame using the same amount of input data. The same problem appened with my old mali g72 after 20 frames.

I tried to use streamline, but as i run windows7 i cannot have the analizer, how just run from windows10. But i can get the graph and i remarked a strange activity on the GPU.

1) the Mali Memory Read Latency after to get red after the 70-80 frames. (it show 25 mega beats ?)

2) the Mali geométry culling rate start to ocsillate. (it show 100%)

3) the Mali geométry efficiency start to ocsillate. (it show 3 trheads)

4) Mali Early ZS rate is red

and many other thing start to ocillate. But Device Thermal State is 100% green.

in fact after 70-80 frames a lot of thing start to ocsillate.

And streamline is to complicated for me. there is too much things to know and anderstant. I do not have the time.

So i am wondering if it could be possible for an expert to analyse it.

As i said i had the same problem on old maliG78 so at some point there is something that goes wrong using in alternance GPU-CPU-GPU. In one of my post about SVM someone told me that using GPU and CPU was not a good odea. But i cannot do with GPU what i am doing with GPU. Or i do not know how to do with GPU what i am doing with CPU. At some time i need to procces data with CPU.

thanks for the help.

Parents
  • hi,

    I did not get any answer about the problem i describe. Does some one had a look at it. For me it look like when cortec-x3 decrease the trouble start. But i will not surprised that using different core at différent speed could cause this kind of trouble.
    That is way i asked in another post why to use different core with different speed. At one moment synchronization problem will appear. The problem alway append when the quatity of data to process increase. So if it is not a problem of synchrinization it is to protect the processor to heat and consume electricity. But it would be nice for me and other user to anderstand why this append.

    Or it is médiatek how does not implement correctly the ARM spécification.

    it is too big to not have a look at it and not help user to anderstand the problem. But lier i said before this appends also on old ARM using kirim processor which are rather pretty good.

    As i see on the graph. When cortec-x3 start to decrease cortex-510 increase. And as you can see all cortex are not very stable in time even ithey have to procees the same amount of data.

    But the good question is way the processor is disturbing the GPU how disturb the processor. Synchronozation ?

    So may be it is time to let the user use the core he want to use or put all the core at the same speed.

    My next buy would be a qualcomm. So i will see problem on both architecture.

Reply
  • hi,

    I did not get any answer about the problem i describe. Does some one had a look at it. For me it look like when cortec-x3 decrease the trouble start. But i will not surprised that using different core at différent speed could cause this kind of trouble.
    That is way i asked in another post why to use different core with different speed. At one moment synchronization problem will appear. The problem alway append when the quatity of data to process increase. So if it is not a problem of synchrinization it is to protect the processor to heat and consume electricity. But it would be nice for me and other user to anderstand why this append.

    Or it is médiatek how does not implement correctly the ARM spécification.

    it is too big to not have a look at it and not help user to anderstand the problem. But lier i said before this appends also on old ARM using kirim processor which are rather pretty good.

    As i see on the graph. When cortec-x3 start to decrease cortex-510 increase. And as you can see all cortex are not very stable in time even ithey have to procees the same amount of data.

    But the good question is way the processor is disturbing the GPU how disturb the processor. Synchronozation ?

    So may be it is time to let the user use the core he want to use or put all the core at the same speed.

    My next buy would be a qualcomm. So i will see problem on both architecture.

Children
No data