On 2016年07月26日 17:05, Christian König wrote:
Am 26.07.2016 um 10:41 schrieb zhoucm1:
On 2016年07月26日 16:27, Christian König wrote:
Am 26.07.2016 um 07:33 schrieb zhoucm1:
On 2016年07月26日 10:40, zhoucm1 wrote:
1. We add an optional "shadow" flag so that when a BO in VRAM is
allocated we also allocate a shadow BO in GART.
2. We have another "backup" flag that says on the next command
submission the BO is backed up from VRAM to GART before that
submission.
3. We set the shadow flag for VM PD/PT BOs and every time we
modify them set the backup flag so they get backed up on next CS.
4. We add an IOCTL to allow setting the backup flag from userspace
so that we can trigger another backup even after the first CS.
When I'm trying it and thinking more, a general shadow BO indeed be
a sense way, but backup flag seems not necessary, mainly two reasons:
1. we cannot make sure backup job is completed when gpu reset happens.
Correct, but we can't guarantee that for VM updates either.
Since we directly fill pte info to shadow BO, not copy from VRAM to
GTT. Which ensures shadow BO content always is right, event these
jobs don't complete when gpu reset, but after gpu reset, we can sync
these jobs, and then copy GTT to VRAM. The similar case is also same
for shader BOs. So we should directly fill the shadow BOs.
I see what you mean. The PTE update and the shadow update must be one
operation for this to be always consistent.
Alternatively you could flip the order and do the update on the shadow
first and then copy the result to the real one.
BTW: We should make this an optional feature, cause it will certainly
use a lot of memory and computation resources.
Make sense. Can we depend on whether lockup is enabled or not?
Regards,
David Zhou
Regards,
Christian.
Regards,
David Zhou
2. backup flag is to copy the whole BO, which seems overhead. If we
update shadow BO along with BO in real time, e.g. PD/PT, we could
only update some ptes not the entire BO.
How about using a begin/end range of which parts of the BO needs to
be backed up instead of a flag?
So can we assume shadow BO always needed to backup if shadow flag
is set?
For shader BOs clearly not a good idea because they are rarely
update and so backing them up every time would be a huge overhead.
Regards,
Christian.
Regards,
David Zhou
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx