teoxoy
d30c02ffa3
use .error_ident()
for resource logging
2024-06-25 11:14:41 +02:00
teoxoy
eeb57e1cee
pass BufferId
to unmap
for tracing
2024-06-25 11:14:41 +02:00
teoxoy
1a4f6aca6f
trace as soon as possible
2024-06-25 11:14:41 +02:00
teoxoy
fd52ec8997
remove tracing from deferred texture view and bind group destruction
...
we already trace texture view and bind group drop in the corresponding `Global` methods so we might end up with double drop actions
2024-06-25 11:14:41 +02:00
teoxoy
812a562331
remove tracing from Destroyed{Buffer,Texture}
drop impl
...
we already trace buffer drop and destroy in the corresponding `Global` methods so we might end up with double drop/destroy actions
2024-06-25 11:14:41 +02:00
teoxoy
f2ea30772c
move destroy/drop tracing actions in Global
's methods
2024-06-25 11:14:41 +02:00
teoxoy
e2c4348959
replace .then_some(()).ok_or_else(e)
with if
s
2024-06-25 11:14:41 +02:00
Andreas Reich
b4c7987aa7
Separate renderpass arc resolve & renderpass consume on end ( #5794 )
2024-06-25 09:37:29 +02:00
Nicolas Silva
1de04926b1
Add infrastructure for counting and reporting internal resources ( #5708 )
...
* Add an optional system for counting and reporting internal resources and events
* Count API objects in wgpu-hal
* Expose internal counters in wgpu-core and wgpu.
2024-06-24 11:20:10 +02:00
Elabajaba
35477dff9a
automatically check for subgroup support when creating a naga Validator
2024-06-21 10:20:25 +02:00
teoxoy
1e784c9c0a
use TrackerIndex
instead of IDs in PendingWrites
's fields
2024-06-20 16:34:17 +02:00
teoxoy
2e1e1cd26e
inline id getters
2024-06-20 16:34:17 +02:00
teoxoy
ef2da1a6d7
rename UsageConflict
to ResourceUsageCompatibilityError
2024-06-20 16:34:17 +02:00
teoxoy
5f6848eddf
remove IDs from UsageConflict
variants
2024-06-20 16:34:17 +02:00
teoxoy
123a59ae7b
change return type of ResourceMetadataProvider.get
to &Arc<T>
2024-06-20 16:34:17 +02:00
teoxoy
26eceabe86
move body of BufferUsageScope.insert_merge_single
in BufferUsageScope.merge_single
2024-06-20 16:34:17 +02:00
teoxoy
aaec1c37b9
take resource lookup out of BufferUsageScope.merge_single
2024-06-20 16:34:17 +02:00
teoxoy
f5072261c7
remove ID from QueueSubmitError::BufferStillMapped
2024-06-20 16:34:17 +02:00
teoxoy
b0d2517bf4
change BindGroup.raw
to BindGroup.try_raw
2024-06-20 16:34:17 +02:00
teoxoy
08f5eb82cd
introduce TextureView.try_raw
2024-06-20 16:34:17 +02:00
teoxoy
7bd9195aa2
take resource lookup out of StatelessTracker.add_single
2024-06-20 16:34:17 +02:00
teoxoy
2ec7254772
remove old comment
2024-06-20 16:34:17 +02:00
teoxoy
a024afe182
consolidate destroyed texture/buffer errors and separate them from invalid ID errors
2024-06-20 16:34:17 +02:00
teoxoy
97a038a768
make return type of TextureTracker.set_single
non-optional
2024-06-20 16:34:17 +02:00
teoxoy
d2218398ff
take buffer lookup out of BufferBindGroupState.add_single
2024-06-20 16:34:17 +02:00
teoxoy
6a181fa634
remove IDs from StatelessBindGroupState
2024-06-20 16:34:17 +02:00
teoxoy
a979d2ed46
simplify BufferTracker.set_single
's return type
2024-06-20 16:34:17 +02:00
teoxoy
862f19524f
make check_texture_usage
a texture method
2024-06-20 16:34:17 +02:00
teoxoy
87382d7133
make check_buffer_usage
a buffer method
2024-06-20 16:34:17 +02:00
teoxoy
068da49a4c
use error_ident
for log instead of ID
2024-06-20 16:34:17 +02:00
teoxoy
836f016dcd
use the tracker index as key in hashmap instead of ID
2024-06-20 16:34:17 +02:00
teoxoy
0c4b449644
use Arc::ptr_eq
for resource equality
2024-06-20 16:34:17 +02:00
teoxoy
a21bbdccf0
remove usage of Buffer IDs in clear code
2024-06-20 16:34:17 +02:00
teoxoy
8465a64104
remove usage of Texture IDs in clear code
2024-06-20 16:34:17 +02:00
teoxoy
2a7f09aebc
make clear_texture_via_render_passes
infallible (in practice it was already)
2024-06-20 16:34:17 +02:00
teoxoy
8d805c99d3
remove TextureBindGroupState.add_single
's return type
2024-06-20 16:34:17 +02:00
teoxoy
43177d78d6
replace uses of Id.backend()
with A::VARIANT
2024-06-20 16:34:17 +02:00
Jim Blandy
584f9e189c
[core] Improve resource and api logging.
...
- Improve logging in `StatelessTracker::remove_abandoned` to show the
outcome of the call.
- Add similar logging to `BufferTracker` and `TextureTracker`.
- Let `device_create_buffer`'s log only the new buffer's label, id,
and whether it's mapped at creation. It used to show the whole
descriptor, which is too much detail.
- Have `queue_submit` log the submission id, and have `device_poll`
log what it was waiting for, and what actually got done.
- Have `Device::drop` log the destruction of the raw device when it
actually happens, so it's properly ordered with respect to logging
from other parts of the device, like `Device::command_allocator`.
2024-06-19 21:13:38 -07:00
teoxoy
284c807abc
reorder map_async
validation steps
2024-06-19 14:05:18 +02:00
teoxoy
cc7b2db235
move map_async
body in a new buffer method
2024-06-19 14:05:18 +02:00
teoxoy
0b7a5b054b
move command encoder/buffer creation in a new device method
2024-06-19 14:05:18 +02:00
teoxoy
4b5666ceff
move most device validity checks inside the device's methods
2024-06-19 14:05:18 +02:00
teoxoy
edc2cd9615
introduce Device.check_is_valid
2024-06-19 14:05:18 +02:00
teoxoy
508ece312d
remove device invalidity checks from property accessors
...
accessing those properties is always fine
2024-06-19 14:05:18 +02:00
teoxoy
3e44a98088
remove device validity checks from create_{texture,buffer}_from_hal
...
those resources have been created already, we don't need to make sure the device is valid
2024-06-19 14:05:18 +02:00
teoxoy
14e750205a
move BGL same device check inside create_bind_group
2024-06-19 11:15:38 +02:00
teoxoy
c01a1335aa
rename WrongDevice
to DeviceMismatch
2024-06-19 11:15:38 +02:00
teoxoy
ce716adb5e
improve device mismatch errors
2024-06-19 11:15:38 +02:00
teoxoy
adfb183dc0
move same device validation in compute_pass_end_impl
2024-06-19 11:15:38 +02:00
teoxoy
53f8477b15
validate for same device via Arc::ptr_eq
rather than IDs
2024-06-19 11:15:38 +02:00