https://blog.csdn.net/johnbob2014
https://juejin.im/post/5a31fcdc51882531b15b8294
https://developer.apple.com/library/archive/documentation/Miscellaneous/Conceptual/MetalProgrammingGuide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40014221-CH1-SW1