ERROR_CGDataProvider_BufferIsNotBigEnough - Help with core graphics
-
I'm trying to track down a MAC core graphics issue that is making the DAW GUI sluggish.
Without OpenGL, the DAW will creep to a halt as soon as the plugin is inserted. With OpenGL enabled, the DAW is only slow when the plugin is visible.
It seems to only effect slightly older MacOS users.
Time Profiler points to an error in Core graphics while drawing pixelsERROR_CGDataProvider_BufferIsNotBigEnough+0x31
Any tips or tricks with this?
-
@dustbro which DAW?
-
@d-healey This specific DAW is protools, but I'm also seeing the issue in Logic.
-
Which OS version?
-
I got the similar report on a new computer too. The system info is:
- iMac 2019
- Intel(R) Core(TM) i5-9600K CPU @ 3.70GHz (6 cores, L2-Cache 256 KB, L3-Cache 9 MB)
- 40 GB DDR4 2667 MHz
- Graphics: Radeon Pro 580X 8Gb
- DAW: Ableton
The GUI so laggy. Also Ableton slows down visually. But same plugin works without any issues in older MacBook Pro.
I think this is about the settings or drivers of the graphic cards. Something makes that happen....
I know that for OpenGl, some graphic cards want extra drivers. Especially if the user has onboard graphic card it can be more difficult for him to open the plugin.
-
@d-healey 10.13.6
-
@dustbro Does your test system also have a Radeon GPU?
-
@d-healey Radeon HD 4870
-
@dustbro I think we've found a common link :) @Christoph-Hart Any input?
-
@d-healey @dustbro Can confirm a similar crash on my end. I'm also on Radeon HD 5770. Here's the symbolicated crash log from Cubase:
Process: Cubase 10.5 [27690] Path: /Applications/Cubase 10.5.app/Contents/MacOS/Cubase 10.5 Identifier: Cubase 10.5 Version: 10.5.0.68 (10.5.0.68) Code Type: X86-64 (Native) Parent Process: ??? [1] Responsible: Cubase 10.5 [27690] User ID: 502 Date/Time: 2021-02-08 12:33:07.716 -0800 OS Version: Mac OS X 10.13.6 (17G66) Report Version: 12 Anonymous UUID: 17C59BB8-3A7A-3916-1D3C-0AA0A4200CB9 Time Awake Since Boot: 600000 seconds System Integrity Protection: enabled Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x000000034b12eb67 Exception Note: EXC_CORPSE_NOTIFY Termination Signal: Segmentation fault: 11 Termination Reason: Namespace SIGNAL, Code 0xb Terminating Process: exc handler [0] Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 com.apple.CoreGraphics 0x00007fff45fe9a9b ERROR_CGDataProvider_BufferIsNotBigEnough + 43 1 com.apple.CoreGraphics 0x00007fff45fe9877 CGDataProviderRetainBytePtr + 233 2 com.apple.CoreGraphics 0x00007fff45eea5d0 get_image_pointer + 59 3 com.apple.CoreGraphics 0x00007fff45ee9ac2 img_decode_read + 156 4 com.apple.CoreGraphics 0x00007fff45ee9923 img_colormatch_read + 343 5 com.apple.CoreGraphics 0x00007fff45ee973f img_alphamerge_read + 528 6 com.apple.CoreGraphics 0x00007fff45ee79be img_data_lock + 9651 7 com.apple.CoreGraphics 0x00007fff45ee3ea9 CGSImageDataLock + 190 8 com.apple.CoreGraphics 0x00007fff45fb9465 RIPImageDataInitializeShared + 88 9 com.apple.CoreGraphics 0x00007fff45f9ddbd RIPImageCacheGetRetained + 680 10 com.apple.CoreGraphics 0x00007fff45fc70b0 ripc_DrawImage + 974 11 com.apple.CoreGraphics 0x00007fff45f2d0f1 CGContextDelegateDrawImage + 63 12 com.apple.AppKit 0x00007fff431cff43 __backing_store_DrawImage_block_invoke + 70 13 com.apple.AppKit 0x00007fff431cc275 backing_store_delegate + 962 14 com.apple.AppKit 0x00007fff434c66aa backing_store_DrawImage.llvm.776B8D61 + 514 15 com.apple.CoreGraphics 0x00007fff45f2d0f1 CGContextDelegateDrawImage + 63 16 com.apple.CoreGraphics 0x00007fff45ee3422 CGContextDrawImageWithOptions + 632 17 com.apple.CoreGraphics 0x00007fff45ee3190 CGContextDrawImage + 73 18 com.lunacyaudio.cube 0x00000003444bbffc juce::CoreGraphicsContext::drawImage(juce::Image const&, juce::AffineTransform const&, bool) + 812 19 com.lunacyaudio.cube 0x00000003444e812d juce::Graphics::drawImage(juce::Image const&, int, int, int, int, int, int, int, int, bool) const + 285 20 com.lunacyaudio.cube 0x00000003442dc350 hise::FilmstripLookAndFeel::drawRotarySlider(juce::Graphics&, int, int, int, int, float, float, float, juce::Slider&) + 512 (juce_ReferenceCountedObject.h:442) 21 com.lunacyaudio.cube 0x00000003445985f8 juce::Slider::paint(juce::Graphics&) + 248 22 com.lunacyaudio.cube 0x0000000344559119 juce::Component::paintComponentAndChildren(juce::Graphics&) + 201 (juce_GraphicsContext.cpp:141) 23 com.lunacyaudio.cube 0x00000003445594bb juce::Component::paintComponentAndChildren(juce::Graphics&) + 1131 24 com.lunacyaudio.cube 0x00000003445594bb juce::Component::paintComponentAndChildren(juce::Graphics&) + 1131 25 com.lunacyaudio.cube 0x00000003445594bb juce::Component::paintComponentAndChildren(juce::Graphics&) + 1131 26 com.lunacyaudio.cube 0x00000003445594bb juce::Component::paintComponentAndChildren(juce::Graphics&) + 1131 27 com.lunacyaudio.cube 0x00000003445594bb juce::Component::paintComponentAndChildren(juce::Graphics&) + 1131 28 com.lunacyaudio.cube 0x00000003445594bb juce::Component::paintComponentAndChildren(juce::Graphics&) + 1131 29 com.lunacyaudio.cube 0x00000003445594bb juce::Component::paintComponentAndChildren(juce::Graphics&) + 1131 30 com.lunacyaudio.cube 0x00000003445696a9 juce::ComponentPeer::handlePaint(juce::LowLevelGraphicsContext&) + 329 (memory:2600) 31 com.lunacyaudio.cube 0x000000034456304e juce::JuceNSViewClass::drawRect(objc_object*, objc_selector*, CGRect) + 510 32 com.apple.AppKit 0x00007fff438e9f29 _NSViewDrawRect + 83 33 com.apple.AppKit 0x00007fff4318273c -[NSView _drawRect:clip:] + 1819 34 com.apple.AppKit 0x00007fff43181598 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4844 35 com.apple.AppKit 0x00007fff43180ec5 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 3097 36 com.apple.AppKit 0x00007fff43180ec5 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 3097 37 com.apple.AppKit 0x00007fff43180ec5 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 3097 38 com.apple.AppKit 0x00007fff4317fddb -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 327 39 com.apple.AppKit 0x00007fff438eb4e0 -[NSView _oldDisplayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 2051 40 com.apple.AppKit 0x00007fff4317ee5d -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 253 41 com.apple.AppKit 0x00007fff4317b0b4 -[NSView displayIfNeeded] + 1581 42 com.apple.AppKit 0x00007fff4317aa52 -[NSWindow displayIfNeeded] + 321 43 com.apple.AppKit 0x00007fff4391b60d ___NSWindowGetDisplayCycleObserver_block_invoke.5902 + 308 44 com.apple.AppKit 0x00007fff4317a55e __37+[NSDisplayCycle currentDisplayCycle]_block_invoke + 695 45 com.apple.QuartzCore 0x00007fff50e398c7 CA::Transaction::run_commit_handlers(CATransactionPhase) + 49 46 com.apple.QuartzCore 0x00007fff50e38389 CA::Transaction::commit() + 171 47 com.apple.AppKit 0x00007fff43932a72 __65+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayRefresh]_block_invoke + 283 48 com.apple.CoreFoundation 0x00007fff45ac8737 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 49 com.apple.CoreFoundation 0x00007fff45ac865f __CFRunLoopDoObservers + 511 50 com.apple.CoreFoundation 0x00007fff45aab128 __CFRunLoopRun + 1240 51 com.apple.CoreFoundation 0x00007fff45aaa9b7 CFRunLoopRunSpecific + 487 52 com.apple.HIToolbox 0x00007fff44d8ad96 RunCurrentEventLoopInMode + 286 53 com.apple.HIToolbox 0x00007fff44d8aa0f ReceiveNextEventCommon + 366 54 com.apple.HIToolbox 0x00007fff44d8a884 _BlockUntilNextEventMatchingListInModeWithFilter + 64 55 com.apple.AppKit 0x00007fff4303ba73 _DPSNextEvent + 2085 56 com.apple.AppKit 0x00007fff437d1e34 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 3044 57 com.apple.AppKit 0x00007fff43030885 -[NSApplication run] + 764 58 com.steinberg.cubase10v5 0x000000010cbf63a8 0x10ac1a000 + 33407912 59 com.steinberg.cubase10v5 0x000000010ca22736 0x10ac1a000 + 31491894 60 com.steinberg.cubase10v5 0x000000010c60ede1 0x10ac1a000 + 27217377 61 com.steinberg.cubase10v5 0x000000010c61293b 0x10ac1a000 + 27232571 62 libdyld.dylib 0x00007fff6d99e015 start + 1
-
The last NVidia graphics card was used in a mac computer, almost 10 years ago :)
-
Most macs have an onboard graphics chip from intel (at least all of my 6 mac systems do). But it‘s possible that there is something going on with ATI cards.
-
@dustbro I've been struggling with this - is your plugin quite visual? I found that FilterDisplays were really slowing things down. I've had to implement OpenGL.
https://forum.hise.audio/topic/3592/hise-heavy-on-gpu-processing/37
Oh wait - we had a convo about this on the thread haha!