Hello there,
I'am developing a job schedule policy for Mali T628. But I am confused about Jos Slot and Address Space:
1. What does Job Slot mean? What is the relationship between job slot and shader core?
Mali T628 has 8 shader core. But I get the amount of job slot is 3 ( by printk gpu_props->num_job_slots).
2. What does Address Space mean?
Does it mean a space in memory to store process's context during context swicth?
Is context switch by hardware?
3. What the GPU do during soft and hard stop a job?
Thank you!
A "process" from the GPU's point of view - i.e. a unique address space with a set of MMU tables. Not necessarily a 1:1 mapping to a CPU process.
Soft-stop = suspend a GPU task prior to context switch.
Hard-stop = kill a badly behaved GPU process.
Hi Peter,
Can you please explain more about "Hard-stop = kill a badly behaved GPU process."
I am wondering what a badly behaving GPU process could be like and under what situations?
Is it expected to come across hard stops and GPU reset?
Can any user application cause a GPU reset?
Basically I am seeing some GPU resets on mali gpu during some GLES composition test run in a loop, the gpu reset happens randomly while executing the tests for really long duration.
Thanks.
Very very long running threads/pixels which don't complete quickly enough to stop the GPU work before the timeout.
Technically, yes, but the application would have to be exceptionally strange (e.g. taking longer than the hard-stop timeout to render a tiny screen region or small number of vertices or compute work groups).
Under normal usage, no.
If your synthetic test has an exceptionally high number of layers per pixel, and/or very long shader programs, then it is certainly possible (real applications wouldn't do this).
HTH, Pete