I am studying Metalright now and trying to understand the lines below:
Metal
let threadGroupCount = MTLSizeMake(8, 8, 1) ///line 1 let threadGroups = MTLSizeMake(drawable.texture.width / threadGroupCount.width, drawable.texture.height / threadGroupCount.height, 1) ///line 2 command_encoder.dispatchThreadgroups(threadGroups, threadsPerThreadgroup: threadGroupCount) ///line 3
for line 1, what are integers? My guess is to assign the number of threads that will be used in this process, but which one is there?
line 1
What is the difference between line 1and 'line 2'? My assumption is again different between threads and groups of threads. But I'm not sure what the fundamental difference is and when to use what.
, , , ( * * ), , maxTotalThreadsPerThreadgroup .
maxTotalThreadsPerThreadgroup
threadsPerThreadgroup "" (.. ). threadgroupsPerGrid , . , , .
threadsPerThreadgroup
threadgroupsPerGrid
: threadExecutionWidth, , . , threadExecutionWidth. , .
threadExecutionWidth
( 8x8), . dispatchThreadgroups (_: threadsPerThreadgroup:) . , .
Source: https://habr.com/ru/post/1655626/More articles:SSL certificate error when clicking on Heroku - gitUsing ElasticSearch and Kibana for Business Intelligence - elasticsearchМногопоточность с основными данными и запросами API - multithreadingEureka slowly deletes instances - spring-bootscikit learn output metrics.classification_report in CSV / tab-limit format - pythonPHP request does not work with variable - phpIs it possible to restart restarted erlang applications automatically? - erlangUnderstanding the embedded EJBC content - javaJBoss Embedded jUnit for EJB: NameNotFoundException - junitIOS: how to symbolize user structure - iosAll Articles