Fortunately problem seems to be isolated to Catalyst or MacOS (12.3.1 (21E258)), does not reproduce on IOS.
Post
Replies
Boosts
Views
Activity
Hi,
please see https://feedbackassistant.apple.com/feedback/13367810 .
I was unable to attach anything to the Issue, the attachment form gives a HTTP 403 error code, but it should be easy to reproduce from the steps provided.
Thank you!
Jacob
Here you go https://feedbackassistant.apple.com/feedback/13531490
Not having these settings under application control is extremely problematic, I am seeing both a 7-8x slowdown compared to my own AI image processing code that has zero need for any portrait or other effects, and frequent crashes such as this one:
thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=2, address=0x18e8d9e600)
frame #0: 0x00000001f37dba44 AGXMetalG14XAGX::TextureGen4<(AGXTextureMemoryLayout)3, AGX::G14X::Encoders, AGX::G14X::Classes>::TextureGen4(AGX::G14X::Device*, bool, AGXHardwareTextureMemoryOrder, MTLTextureType, AGX::TextureFormat const*, MTLPixelFormat, unsigned long, MTLStorageMode, AGXTextureCompressionSettings, eAGXColorSpaceConversion, eAGXTextureRotation, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned long, unsigned int, MTLCPUCacheMode, __IOSurface*, unsigned int, unsigned int, __IOSurface*, unsigned int, unsigned int, bool, bool, bool, unsigned long long) + 2108 frame #1: 0x00000001f37dc844 AGXMetalG14XAGX::TextureGen4<(AGXTextureMemoryLayout)3, AGX::G14X::Encoders, AGX::G14X::Classes>::TextureGen4(AGX::G14X::Device*, bool, AGXHardwareTextureMemoryOrder, MTLTextureType, AGX::TextureFormat const*, MTLPixelFormat, unsigned long, MTLStorageMode, AGXTextureCompressionSettings, eAGXColorSpaceConversion, eAGXTextureRotation, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned long, unsigned int, MTLCPUCacheMode, __IOSurface*, unsigned int, unsigned int, __IOSurface*, unsigned int, unsigned int, bool, bool, bool, unsigned long long) + 5692
frame #2: 0x00000001f37df1b4 AGXMetalG14X-[AGXG14XFamilyTexture initImplWithDevice:Descriptor:iosurface:plane:slice:buffer:bytesPerRow:allowNPOT:sparsePageSize:isCompressedIOSurface:isHeapBacked:] + 1176 frame #3: 0x00000001f37faf7c AGXMetalG14X-[AGXTexture initWithDevice:desc:iosurface:plane:slice:] + 216
frame #4: 0x00000001919672f0 QuartzCoreallocate_drawable_texture(id<MTLDevice>, __IOSurface*, unsigned int, unsigned int, MTLPixelFormat, unsigned long long, bool, NSString*, unsigned long) + 176 frame #5: 0x0000000191722338 QuartzCoreget_unused_drawable(_CAMetalLayerPrivate*, bool, bool) + 620
frame #6: 0x0000000191968378 QuartzCoreCAMetalLayerPrivateNextDrawableLocked(CAMetalLayer*, CAMetalDrawable**, unsigned long*) + 1652 frame #7: 0x0000000191721f94 QuartzCore-[CAMetalLayer nextDrawable] + 128
frame #8: 0x000000019b234350 MetalKit-[MTKView currentDrawable] + 184 frame #9: 0x000000019b233f7c MetalKit-[MTKView currentRenderPassDescriptor] + 40
frame #10: 0x0000000100010948 vertigodemoMetalViewImpl::Render(this=0x000000012f3cb310) at metalview.mm:701:28 frame #11: 0x00000001000107c4 vertigodemo-[MetalMTKView draw](self=0x0000000138058c00, _cmd="draw") at metalview.mm:369:11
frame #12: 0x000000019b233aa0 MetalKit__23-[MTKView __initCommon]_block_invoke + 40 frame #13: 0x00000001893ac910 libdispatch.dylib_dispatch_client_callout + 20
frame #14: 0x00000001893afdc8 libdispatch.dylib_dispatch_continuation_pop + 600 frame #15: 0x00000001893c3be4 libdispatch.dylib_dispatch_source_latch_and_call + 420
frame #16: 0x00000001893c27b4 libdispatch.dylib_dispatch_source_invoke + 832 frame #17: 0x00000001893baeb8 libdispatch.dylib_dispatch_main_queue_drain + 744
frame #18: 0x00000001893babc0 libdispatch.dylib_dispatch_main_queue_callback_4CF + 44 frame #19: 0x000000018967cea4 CoreFoundationCFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 16
frame #20: 0x000000018963a760 CoreFoundation__CFRunLoopRun + 1996 frame #21: 0x000000018963993c CoreFoundationCFRunLoopRunSpecific + 608
frame #22: 0x0000000193c02448 HIToolboxRunCurrentEventLoopInMode + 292 frame #23: 0x0000000193c02284 HIToolboxReceiveNextEventCommon + 648
frame #24: 0x0000000193c01fdc HIToolbox_BlockUntilNextEventMatchingListInModeWithFilter + 76 frame #25: 0x000000018ce18ed0 AppKit_DPSNextEvent + 660
frame #26: 0x000000018d603eec AppKit-[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 716 frame #27: 0x000000018ce0c37c AppKit-[NSApplication run] + 476
frame #28: 0x000000010000f990 vertigodemomain(argc=3, argv=0x000000016fdff760) at macos-main.mm:48:5 frame #29: 0x00000001891dd0e0 dyldstart + 2360
Hi and thank you for the suggestion.
Unfortunately turned the Reactions off does not remove the CPU/GPU overhead. The CPU stack trace was captured with all Reactions disabled in the UI.
Also, I don't want to have to ask my users to help me workaround what really seems like a bug/design flaw in the macOS APIs. I need to be able to programmatically disable this without asking for help from the user.