Prosecution Insights
Last updated: October 02, 2026
Application No. 18/818,328

GRAPHICS PROCESSING

Non-Final OA §101§103§DP
Filed
Aug 28, 2024
Examiner
SZE, BRIANA
Art Unit
2614
Tech Center
2600 — Communications
Assignee
ARM Limited
OA Round
1 (Non-Final)
100%
Grant Probability
Favorable
1-2
OA Rounds
0m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 100% — above average
100%
Career Allowance Rate
1 granted / 1 resolved
+38.0% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Fast prosecutor
1y 11m
Avg Prosecution
8 currently pending
Career history
12
Total Applications
across all art units

Statute-Specific Performance

§101
12.2%
-27.8% vs TC avg
§103
63.4%
+23.4% vs TC avg
§102
7.3%
-32.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 1 resolved cases

Office Action

§101 §103 §DP
DETAILED ACTION The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Double Patenting The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13. The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer. Claim 1, 11, 21 rejected on the ground of nonstatutory double patenting as being unpatentable over claim 1, 11 of U.S. Co-Pending Application No. 18818340 in view of Nystad (US20120281007A1). Although the claims at issue are not identical, they are not patentably distinct from each other because the claims of the co-pending application anticipate the identified claims of the current application. Claim Current Application 18818328 Claim Co-pending Application 18818340 1 A method of operating a graphics processor to generate a render output, the method comprising: for a sequence of primitives to be processed for the render output: performing an initial processing pass comprising processing primitives within the sequence of primitives into respective sets of one or more fragments, each fragment associated with a respective set of one or more sampling positions within the render output, and then processing the resulting fragments to determine which particular primitives in the sequence of primitives are visible for which sampling positions within the render output; and thereafter performing a further processing pass to generate respective output values for the respective sampling positions within the render output, the further processing pass comprising, for each sampling position for which an output value is to be generated, generating a respective output value for the sampling position by performing further processing of the particular primitive in the sequence of primitives that is visible at that sampling position, wherein a set of information is generated from the processing of the sequence of primitives by the initial processing pass as to the further processing of primitives that is to be performed in respect of particular sampling positions within the render output when generating the respective output values for those particular sampling positions, and wherein the method further comprises: 1 A method of operating a graphics processing system comprising a graphics processor operable to generate render outputs and a texture data processing system including a texture cache that is operable to transfer graphics texture data between a memory system in which graphics texture data is stored and the graphics processor, the method comprising: for a sequence of primitives to be processed for a render output: the graphics processor: performing an initial processing pass comprising processing primitives within the sequence of primitives into respective sets of one or more fragments, each fragment associated with a respective set of one or more sampling positions within the render output, and then processing the resulting fragments to determine which particular primitives in the sequence of primitives are visible for which sampling positions within the render output; and thereafter performing a further processing pass to generate respective output values for the respective sampling positions within the render output, the further processing pass comprising, for respective sampling positions for which an output value is to be generated, performing further processing of the particular primitive in the sequence of primitives that is visible at that sampling position to generate a respective output value for the sampling position, the further processing including the graphics processor obtaining graphics texture data associated with the primitive from the texture data processing system and applying the obtained graphics texture data to the sampling position, wherein a set of information is generated from the processing of the sequence of primitives by the initial processing pass that is usable to identify which graphics texture data is to be applied during the further processing pass at which sampling positions within the render output, and wherein the method further comprises: controlling how the graphics texture data that is to be applied to one or more sampling positions within the render output during the further processing pass is obtained from the texture data processing system based on the set of information generated from the processing of the sequence of primitives by the initial processing pass. controlling an order in which the sampling positions are processed during the further processing pass based on the set of information generated from the processing of the sequence of primitives by the initial processing pass. Prior art reference Nystad (US20120281007A1) “Bits[1:0] of the trit-block are stored. Then, the low bits for the second integer are stored. Then, bits[3:2] of the trit-block are stored. Then, the low bits for the third integer are stored. Then, bit[4] of the trit-block is stored. Then, the low bits for the fourth integer are stored. Then bits[6:5] of the trit-block are stored. [0913] Then, the low bits for the fifth integer are stored. Then, bit [7] of the trit-block is stored” (Nystad, 0914) and “this operation is repeated for every group of 5 integers, until all the integers in the sequence have been consumed” (Nystad, 0915). “Each block of texture data elements is then tested to see whether the set of texture data elements of the block can be encoded as having the same, constant data value. This is done by determining whether all the texture data elements of the block have sufficiently similar data values to be encoded as a constant data value block (based, e.g., and in an embodiment, on some selected, in an embodiment predetermined, similarity margin or threshold)” (Nystad, 1103). 11 Claim 11 recites similar limitations as claim 1, but in process form. Therefore, the same rationale used for claim 1 is applied. 11 Claim 11 recites similar limitations as claim 1, but in process form. Therefore, the same rationale used for claim 1 is applied. 21 Claim 21 recites similar limitations as claim 1 and 11, but in process form. Therefore, the same rationale used for claim 1 and 11 are applied. Although the claims at issue are not identical, they are not patentably distinct from each other for current application has a broader scope than the co-pending application with similar limitations. Co-pending application does not teach “controlling an order in which the sampling positions are processed during the further processing pass based on the set of information generated from the processing of the sequence of primitives by the initial processing pass”. However, Nystad teaches “controlling an order in which the sampling positions are processed during the further processing pass based on the set of information generated from the processing of the sequence of primitives by the initial processing pass”. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention was made to incorporate controlling an order in which the sampling positions are processed during the further processing pass based on the set of information generated from the processing of the sequence of primitives by the initial processing pass of Nystad into modified invention of co-pending application 18818340 in order to compress and decompress texture data in computer graphics systems. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claim 21 rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter. The claim(s) does/do not fall within at least one of the four categories of patent eligible subject matter because the claim is directed to signals or software per se as the computer program product could be a transitory medium or program software per se. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim(s) 1, 2, 3, 6, 11, 12, 13,16, 21 is/are rejected under 35 U.S.C. 103 as being unpatentable over Nystad (US20120281007A1) in view of Clarberg (US20190087992A1). Regarding claim 1, Nystad teaches A method of operating a graphics processor to generate a render output, the method comprising: “In an embodiment, the decoder (decoding apparatus) is implemented in the device that is to use the encoded textures, such as a graphics processor. The decoder is in an embodiment implemented as a dedicated hardware element that is configured to carry out the decoding process” (Nystad, 0504). for a sequence of primitives to be processed for the render output: performing an initial processing pass comprising processing primitives within the sequence of primitives into respective sets of one or more fragments, “The rasteriser 22 takes as its input primitives to be displayed, and rasterises those primitives to sampling positions and generates fragments to be rendered, as is known in the art” (Nystad, 1063) and “the decoding process would be essentially the reverse of the encoding process, and thus comprise, e.g., determining from the encoded texture data block how to generate the set of data values (e.g. endpoint colours) to be used for block, generating that set of data values (e.g. colours), and then generating the data values (e.g. colours) for individual texture data elements accordingly. The so-generated, decoded texture data element values can then be applied, as is known in the art, to sampling positions and/or fragments that are being rendered to generate rendered data for those sampling positions and/or fragments, which rendered data is then, e.g. written to a frame buffer for a display to display the "textured" sampling positions and/or fragments” (Nystad, 0415). generating a respective output value for the sampling position by performing further processing of the particular primitive in the sequence of primitives that is visible at that sampling position, “The rasteriser 22 takes as its input primitives to be displayed, and rasterises those primitives to sampling positions and generates fragments to be rendered, as is known in the art” (Nystad, 1063). controlling an order in which the sampling positions are processed during the further processing pass based on the set of information generated from the processing of the sequence of primitives by the initial processing pass. “Bits are stored in the sequence in the following order: First, the low bits for the first integer are stored. Then, bits[1:0] of the trit-block are stored. Then, the low bits for the second integer are stored. Then, bits[3:2] of the trit-block are stored. Then, the low bits for the third integer are stored. Then, bit[4] of the trit-block is stored. Then, the low bits for the fourth integer are stored. Then bits[6:5] of the trit-block are stored. [0913] Then, the low bits for the fifth integer are stored. Then, bit [7] of the trit-block is stored” (Nystad, 0914) and “this operation is repeated for every group of 5 integers, until all the integers in the sequence have been consumed” (Nystad, 0915). “Each block of texture data elements is then tested to see whether the set of texture data elements of the block can be encoded as having the same, constant data value. This is done by determining whether all the texture data elements of the block have sufficiently similar data values to be encoded as a constant data value block (based, e.g., and in an embodiment, on some selected, in an embodiment predetermined, similarity margin or threshold)” (Nystad, 1103). This process is repeated again with a different block size. Nystad alone does not explicitly teach the remaining claim limitations. However, Nystad in combination with Clarberg teaches the processing pass: “An apparatus and method are described for asynchronous texel shading. For example, one embodiment of a graphics processing apparatus comprises: a first shader to perform shading operations on a plurality of pixels in a first pass and to submit a request to shade texels; and a texel shader to responsively perform texel shading operations in response to the request from the first shader, the texel shader to write results to a procedural texture stored in a memory subsystem, the procedural texture to be read during a second pass by the first shader or another shader” (Clarberg, abstract). This implies future passes. The operations that are based on the request from the first shader is the first pass. Clarberg teaches: wherein a set of information is generated from the processing of the sequence of primitives by the initial processing pass as to the further processing of primitives that is to be performed in respect of particular sampling positions within the render output when generating the respective output values for those particular sampling positions, and wherein the method further comprises: “In order to know where to sample for each pixel on the screen, the forward rendering pass stores per-pixel PT index, texture (u,v) coordinates, mip level, and array slice (if used), similar to how a G-buffer is generated” (Clarberg, 0146). thereafter performing a further processing pass to generate respective output values for the respective sampling positions within the render output, the further processing pass comprising, for each sampling position for which an output value is to be generated, “One embodiment of the invention performs forward shading. FIG. 16 illustrates a model of typical Forward(+) renderer including a Z-prepass stage 1601 for processing depth values, a draw opaque stage 1602 for rendering visible (opaque) pixels, and a draw alpha stage 1603 for processing semi-transparent pixels and a post processing stage 1604” (Clarberg, 0145) and “FIG. 17 shows this use case adapted to use asynchronous texel shading for the opaque (non-transparent) geometry. In this case, the main opaque rendering pass 1602 performs Evaluate operations on procedural textures (PTs) to trigger shading of the relevant texels by texel shader 1703 which operates on vertex data 1720 provided from Z-prepass. The output of the texel shaders are written to a set of sparsely populated PTs 1704, which are sampled using sample operations from a subsequent fullscreen pass by texel shading fetch 1705. In order to know where to sample for each pixel on the screen, the forward rendering pass stores per-pixel PT index, texture (u,v) coordinates, mip level, and array slice (if used), similar to how a G-buffer is generated” (Clarberg, 0146). The Z-prepass stage and the draw alpha stage are future passes in which the visible areas are output. These relate to what is visible in the sampling positions taught above. generating output value: “In some embodiments, GPE 310 includes a 3D pipeline 312 for performing 3D operations, such as rendering three-dimensional images and scenes using processing functions that act upon 3D primitive shapes (e.g., rectangle, triangle, etc.)” (Clarberg, 0047). Nystad alone does not explicitly teach the claimed limitations, but Nystad in combination with Clarberg teaches: each fragment associated with a respective set of one or more sampling positions within the render output, and then processing the resulting fragments to determine which particular primitives in the sequence of primitives are visible for which sampling positions within the render output; “The rendering pipeline 23 takes fragments from the rasteriser 22 and renders those fragments for display. As is known in the art, the rendering pipeline 23 will include a number of different processing units, such as fragment shaders, blenders, texture mappers, etc” (Nystad, 1064); “The output from the rendering pipeline 23 (the rendered fragments) is output to tile buffers 24 (since the present embodiment is a tile-based system). The tile buffers' outputs are then finally output to a frame buffer 25 for display” (Nystad, 1065); “This is repeated for each texel value that is required, and the so-generated, decoded texel values are then applied to sampling positions (fragments) that are being rendered to generate rendered data for those sampling positions (fragments), which rendered data is then, e.g., written to the frame buffer for a display to display the "textured" sampling positions and/or fragments” (Nystad, 1098). The portions that are visible in the sampling positions are renders and output to the display. “FIG. 17 shows this use case adapted to use asynchronous texel shading for the opaque (non-transparent) geometry. In this case, the main opaque rendering pass 1602 performs Evaluate operations on procedural textures (PTs) to trigger shading of the relevant texels by texel shader 1703 which operates on vertex data 1720 provided from Z-prepass. The output of the texel shaders are written to a set of sparsely populated PTs 1704, which are sampled using sample operations from a subsequent fullscreen pass by texel shading fetch 1705. In order to know where to sample for each pixel on the screen, the forward rendering pass stores per-pixel PT index, texture (u,v) coordinates, mip level, and array slice (if used), similar to how a G-buffer is generated” (Clarberg, 0146). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to use the system of Nystad with the multiple processing passes based on the data obtained by an initial pass as taught by Clarberg in order to evaluate the texture data and perform future procedures to render the texture that are better refined. Regarding claim 2, The method of claim 1, Clarberg teaches wherein the generating of a respective output value for a sampling position by performing further processing of the particular primitive in the sequence of primitives that is visible at that sampling position includes applying graphics texture data associated with that particular primitive to the sampling position, and wherein the set of information is generated from the processing of the sequence of primitives by the initial processing pass is usable to identify which graphics texture data is to be applied at which sampling positions within the render output. “Once a group of geometric objects has been processed and rasterized into pixel data, pixel shader 602 is invoked to further compute output information and cause results to be written to output surfaces (e.g., color buffers, depth buffers, stencil buffers, etc.). In some embodiments, pixel shader 602 calculates the values of the various vertex attributes that are to be interpolated across the rasterized object. In some embodiments, pixel shader 602 then executes an application programming interface (API)-supplied pixel shader program. To execute the pixel shader program, pixel shader 602 dispatches threads to an execution unit (e.g., 608A) via thread dispatcher 604. In some embodiments, pixel shader 602 uses texture sampling logic in sampler 610 to access texture data in texture maps stored in memory. Arithmetic operations on the texture data and the input geometry data compute pixel color data for each geometric fragment, or discards one or more pixels from further processing” (Clarberg, 0070). However, Clarberg does not teach, but Nystad teaches: wherein the set of information is generated from the processing of the sequence of primitives by the initial processing pass is usable to identify which graphics texture data is to be applied at which sampling positions within the render output. “It is common in computer graphics systems to generate colours for sampling positions in the image to be displayed by applying so-called textures or texture data to the surfaces to be drawn. For example, surface detail on objects may be generated by applying a predefined "texture" to a set of polygons representing the object, to give the rendered image of the object the appearance of the "texture". Such textures are typically applied by storing an array of texture elements or "texels", each representing given texture data (such as colour, luminance, and/or light/shadow, etc. values), and then mapping the texels onto the corresponding elements, such as (and, indeed, typically) a set of sampling positions, for the image to be displayed. The stored arrays of texture elements (data) are typically referred to as "texture maps" (Nystad, 0003). Regarding claim 3, The method of claim 2, wherein the initial processing pass generates a set of primitive identifying information for the sequence of primitives, the set of primitive identifying information identifying for respective sampling positions in the render output the particular primitive that is visible at that sampling position, the method further comprising: Nystad teaches: prior to the further processing pass: processing the set of primitive identifying information for the sequence of primitives to determine a corresponding set of texture identifying information, the set of texture identifying information identifying for respective sampling positions in the render output particular graphics texture data that is to be applied for that sampling position. “The rasterising process determines the sample positions that should be used for a primitive (i.e. the (x, y) positions of the sample points to be used to represent the primitive in the output, e.g. frame to be displayed)” (Nystad, 0061). “The texture mapping apparatus (texture fetching circuitry) may be operable to calculate, and may calculate, the indices at which an interpolated weight value will be applied to a corresponding texture data value by offsetting (applying one or more offsets to) indices corresponding to the sampling position” (Nystad, 0057). “A texture processing pass may be performed by the texture filtering circuitry as an application (multiplication) of a set of (e.g. internally) calculated interpolation weight values for a sampling position to a corresponding set of texture data values. “A texture mapping operation may be performed as one or more texture processing passes” (e.g. bilinear filtering passes)” (Nystad, 0059). Regarding claim 6, The method of claim 1, Clarberg teaches: wherein the generating of a respective output value for a sampling position by performing further processing of the particular primitive in the sequence of primitives that is visible at that sampling position includes executing one or more fragment shader, and wherein the set of information generated from the processing of the primitives during the initial processing pass is usable to identify which fragment shader is to be executed in respect of which sampling positions. “Thread execution logic 600 includes a pixel shader” (Clarber, 0064) and “the Evaluate version of the pixel shader is executed” (Clarberg, 0134). Regarding claim 11, this claim is similar in scope to limitations recited in claim 1, and thus is rejected under the same rationale. Regarding claim 12, this claim is similar in scope to limitations recited in claim 2, and thus is rejected under the same rationale. Regarding claim 13, this claim is similar in scope to limitations recited in claim 3, and thus is rejected under the same rationale. Regarding claim 16, this claim is similar in scope to limitations recited in claim 6, and thus is rejected under the same rationale. Regarding claim 21, Regarding claim 21, this claim is similar in scope to limitations recited in claim 1 except for additional limitations that Nystad discloses: A computer program product containing instructions that when executed by one or more processor will cause the one or more processor to perform a method of operating a graphics processor to generate a render output, the method comprising: “The methods in accordance with the technology described herein may be implemented at least partially using software e.g. computer programs” (Nystad, 0783). for a sequence of primitives to be processed for the render output: performing an initial processing pass comprising processing primitives within the sequence of primitives into respective sets of one or more fragments, each fragment associated with a respective set of one or more sampling positions within the render output, and then processing the resulting fragments to determine which particular primitives in the sequence of primitives are visible for which sampling positions within the render output; and thereafter performing a further processing pass to generate respective output values for the respective sampling positions within the render output, the further processing pass comprising, for each sampling position for which an output value is to be generated, generating a respective output value for the sampling position by performing further processing of the particular primitive in the sequence of primitives that is visible at that sampling position, wherein a set of information is generated from the processing of the sequence of primitives by the initial processing pass as to the further processing of primitives that is to be performed in respect of particular sampling positions within the render output when generating the respective output values for those particular sampling positions, and wherein the method further comprises: controlling an order in which the sampling positions are processed during the further processing pass based on the set of information generated from the processing of the sequence of primitives by the initial processing pass. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to use the system of Nystad with the multiple processing passes based on the data obtained by an initial pass as taught by Clarberg in order to evaluate the texture data and perform future procedures to render the texture that are better refined. Claim(s) 7, 17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Nystad (US 20120281007 A1) and Clarberg (US 20190087992 A1) further in view of Plowman (US20150339852A1). Regarding claim 7, The method of claim 6, Nystad and Clarberg do not explicitly teach wherein the initial processing pass generates a set of primitive identifying information for the sequence of primitives, the set of primitive identifying information identifying for respective sampling positions in the render output the particular primitive that is visible at that sampling position, the method further comprising: prior to the further processing pass: processing the set of primitive identifying information for the sequence of primitives to determine a corresponding set of texture identifying information, the set of texture identifying information identifying for respective sampling positions in the render output a particular fragment shader that is to be executed in respect of the processing for that sampling position. However, Plowman teaches: wherein the initial processing pass generates a set of primitive identifying information for the sequence of primitives, the set of primitive identifying information identifying for respective sampling positions in the render output the particular primitive that is visible at that sampling position, the method further comprising: prior to the further processing pass: processing the set of primitive identifying information for the sequence of primitives to determine a corresponding set of texture identifying information, the set of texture identifying information identifying for respective sampling positions in the render output a particular fragment shader that is to be executed in respect of the processing for that sampling position. “The rasterising process determines the sample positions that should be used for a primitive (i.e. the (x, y) positions of the sample points to be used to represent the primitive in the output, e.g. frame to be displayed)” (Plowman, 0152) and “wherein the processing circuitry operable to generate sets of polygon vertices over regions of three-dimensional objects being processed by the graphics processing pipeline is configured to: [0023] determine, based on meta-information representative of the surface relief of a region of a three-dimensional object being processed” (Plowman, 0022). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to use the system of Nystad with the multiple processing passes based on the data obtained by an initial pass as taught by Clarberg as modified by set of primitives of Plowman in order to allow the graphics processing operations to be more easily carried out (Plowman, 0002). Regarding claim 17, this claim is similar in scope to limitations recited in claim 7, and thus is rejected under the same rationale. Claim(s) 5, 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Nystad (US20120281007A1), Clarberg (US 20190087992 A1), Lassen, and further in view of Nystad ‘6025 (US20190096025A1). Regarding claim 5, The method of claim 2, Clarberg and Lassen do not explicitly teach wherein the graphics processor supports neural network based texture processing in which when graphics texture data is loaded into the graphics processor during the further processing pass, the graphics texture data is processed into a format for use by the graphics processor by one or more neural networks. However, Nystad ‘6025 teaches wherein the graphics processor supports neural network based texture processing in which when graphics texture data is loaded into the graphics processor during the further processing pass, the graphics texture data is processed into a format for use by the graphics processor by one or more neural networks, “The technology described herein can be used for any form of output that a graphics texture mapper and graphics or data processing unit and system may be used to generate. In one embodiment it is used when a graphics processing unit is being used to generate images for display, but it can be used for any other form of graphics or data processing output, such as (e.g. post-processed) graphics textures in a render-to-texture operation, etc., that a graphics processing unit may produce, as desired. It can also be used when a texture mapper, or, graphics processing unit, etc., is being used to generate other (e.g. non-image or non-graphics) outputs, such as one or more intermediate (convolution layer) outputs (arrays) or final outputs (values or arrays) from an artificial neural network” (Nystad ‘6025, 0105). “In embodiments, the data values and/or weight values stored in the memory may be encoded. Thus, embodiments may comprise the texture mapping apparatus decoding the fetched data values and/or fetched weight values prior to using those values. These embodiments can exploit the existing decoding functionality of the texture mapping apparatus. The texture mapping apparatus may, for example, use the same circuitry to decode both data values and weight values, thus reducing or avoiding the need for additional circuitry to decode the weight values. The decoding can take any desired and suitable form, such as decrypting and/or decompressing” (Nystad ‘6025, 0079). Nystad also teaches “encoding the texture data in this way allows, for example, the data values, such as the colour values, to be used when reproducing the image from the encoded data to be modulated and varied on a block-by-block basis, and, indeed, for partitions within individual blocks (this will be discussed further below). This provides greater flexibility in the data values, e.g., colours, that may be reproduced, even if only a limited overall set or palette of data values (e.g. colours) is provided (e.g. to facilitate data compression)” (Nystad, 0030). Nystad, Nystad ‘6025, and Clarberg do not explicitly teach, but Lassen teaches: and wherein controlling an order in which the sampling positions are processed during the further processing pass comprises identifying a group of sampling positions for which some or all of the same neural network data or data structures are to be used, and processing the sampling positions in the identified group of sampling positions in consecutive order. “a discrete graphical entity usually referred to as a "fragment" on which the graphics processing (interpreted as data structure) operations (such as rendering) are carried out. Covered sampling points are thus, in effect, processed as fragments that will be used to render the primitive at the sampling points in question” (Lassen, 0010). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to use the system of Nystad, the multiple processing passes based on the data obtained by an initial pass of Clarberg, and consecutive order of Lassen as modified by neural network of Nystad ‘6025 in order to allow a graphics processing unit to perform a variety of convolution operations in an efficient manner (Nystad ‘6025, abstract). Regarding claim 15, this claim is similar in scope to limitations recited in claim 5, and thus is rejected under the same rationale. Claim(s) 4, 8, 14, 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Nystad (US20120281007A1), Clarberg (US20190087992A1), and further in view of Harris (US20160247249A1). Regarding claim 4, the method of claim 2, Nystad and Clarberg do not explicitly teach wherein controlling an order in which the sampling positions are processed during the further processing pass comprises identifying a group of sampling positions for which the same graphics texture data is to be applied, and processing the sampling positions in the identified group of sampling positions in consecutive order. However, Harris teaches wherein controlling an order in which the sampling positions are processed during the further processing pass comprises identifying a group of sampling positions for which the same graphics texture data is to be applied, and processing the sampling positions in the identified group of sampling positions in consecutive order. “Once the primitives have been generated and defined, they can be processed by the graphics processing system, in order, e.g., to display the frame” (Harris, 0003) and “the renderer determines from the contribution control information for the rendering operation for the group of fragments being considered” (Harris, 0113). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to use the system of Nystad, the multiple processing passes based on the data obtained by an initial pass of Clarberg, and order of Harris as modified by consecutive order of Harris in order to generate the desired output of the graphics processing system (Harris, 0002). Regarding claim 8, The method of claim 6, Nystad and Clarberg do not teach wherein controlling an order in which the sampling positions are processed during the further processing pass comprises identifying a group of sampling positions for which the same fragment shader is to be executed, and processing the sampling positions in the identified group of sampling positions in consecutive order. However, Harris teaches wherein controlling an order in which the sampling positions are processed during the further processing pass comprises identifying a group of sampling positions for which the same fragment shader is to be executed, and processing the sampling positions in the identified group of sampling positions in consecutive order. “Each variant (or processing step) may correspond to performing a (respective) different set of processing tasks for the set of sampling points, and may, e.g., be defined by respective different (e.g. predefined) shaders (shader programs), draw calls (which may execute one or more shaders) and/or render states (e.g. depth or stencil configuration and/or blending state) to be executed for the set of sampling points” (Harris, 0102). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to use the system of Nystad, the multiple processing passes based on the data obtained by an initial pass of Clarberg as modified by desired order in sampling positions of Harris in order to generate the desired output of the graphics processing system (Harris, 0002). Regarding claim 14, this claim is similar in scope to limitations recited in claim 4, and thus is rejected under the same rationale. Regarding claim 18, this claim is similar in scope to limitations recited in claim 8, and thus is rejected under the same rationale. Claim(s) 9, 19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Nystad (US 20120281007 A1) and Clarberg (US 20190087992 A1) further in view of Guirado (US11169806B1). Regarding claim 9, The method of claim 1, Nystad and Clarberg do not teach wherein controlling an order in which sampling positions are processed for the further processing pass comprises determining a desired order in which sampling positions are to be processed prior to starting the further processing pass. However, Guirado teaches wherein controlling an order in which sampling positions are processed for the further processing pass comprises determining a desired order in which sampling positions are to be processed prior to starting the further processing pass. This will then ensure that a given sequence of associated processing passes is outputted completely from the processing pass record in the proper order, e.g. before starting another sequence of processing passes” (Guirado, 26). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to use the system of Nystad, the multiple processing passes based on the data obtained by an initial pass of Clarberg as modified by prior processing pass of Guirado in order to ensure that the smallest available entry in which to fit the processing pass is chosen as the entry to allocate the processing pass to (Guirado, 21). Regarding claim 19, this claim is similar in scope to limitations recited in claim 9, and thus is rejected under the same rationale. Claim(s) 10, 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Nystad (US20120281007A1), Clarberg (US 20190087992 A1), and further in view of Engh-halstvedt (US20130141445A1). Regarding claim 10, The method of claim 1, Engh-halstvedt teaches wherein controlling an order in which sampling positions are processed for the further processing pass comprises determining, during the further processing pass, for a particular current sampling position being processed, a next sampling position that is to be processed. “Recombine the processed sub-fragments into output fragments for passing to a next stage of the graphics processing pipeline” (Engh-halstvedt, 0113). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to use the system of Nystad, the multiple processing passes based on the data obtained by an initial pass of Clarberg as modified by further processing pass process of Engh-halstvedt in order to ensure compliance with the desired higher level of multisampled anti-aliasing (Engh-halstvedt, abstract). Regarding claim 20, this claim is similar in scope to limitations recited in claim 10, and thus is rejected under the same rationale. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to BRIANA SZE whose telephone number is (571)272-9916. The examiner can normally be reached Monday-Thursday 6am-4pm. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kent Chang can be reached at (571) 272-7667. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /B.S./Examiner, Art Unit 2614 /KENT W CHANG/Supervisory Patent Examiner, Art Unit 2614
Read full office action

Prosecution Timeline

Aug 28, 2024
Application Filed
Aug 13, 2026
Non-Final Rejection mailed — §101, §103, §DP (current)

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
100%
Grant Probability
99%
With Interview (+0.0%)
1y 11m (~0m remaining)
Median Time to Grant
Low
PTA Risk
Based on 1 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month