US 11,748,933 B2
Method for performing shader occupancy for small primitives
Keshavan Varadarajan, Austin, TX (US); David C. Tannenbaum, Austin, CA (US); and F N U Gurupad, San Jose, CA (US)
Assigned to SAMSUNG ELECTRONICS CO., LTD.
Filed by Samsung Electronics Co., Ltd., Suwon-si (KR)
Filed on Feb. 4, 2021, as Appl. No. 17/168,168.
Claims priority of provisional application 63/060,653, filed on Aug. 3, 2020.
Prior Publication US 2022/0036631 A1, Feb. 3, 2022
Int. Cl. G06T 1/20 (2006.01); G06T 15/00 (2011.01); G06T 15/80 (2011.01)
CPC G06T 15/005 (2013.01) [G06T 1/20 (2013.01); G06T 15/80 (2013.01)] 16 Claims
OG exemplary drawing
 
1. A graphics processing unit (GPU), comprising:
one or more shader cores;
a shader warp packer unit configured to:
receive a first primitive associated with a first partially covered quad, and a second primitive associated with a second partially covered quad,
determine that the first partially covered quad and the second partially covered quad have non-overlapping coverage,
pack the first partially covered quad and the second partially covered quad into a packed quad,
send the packed quad to the one or more shader cores, and
assign zero or more pixels from the packed quad to a single lane for a single-lane operation;
one or more texture units;
a first operating mode in which at least one of i) the one or more texture units or ii) the one or more shader cores are configured to compute a directional derivative in the single-lane operation; and
a second operating mode in which the at least one of i) the one or more the texture units or ii) the one or more shader cores are configured to compute a second directional derivative in a cross-lane operation,
wherein the first partially covered quad and the second partially covered quad are spatially disjoint from each other.