INTEL CORPORATIONDownload PDFPatent Trials and Appeals BoardOct 13, 202015529426 - (D) (P.T.A.B. Oct. 13, 2020) Copy Citation UNITED STATES PATENT AND TRADEMARK OFFICE UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office Address: COMMISSIONER FOR PATENTS P.O. Box 1450 Alexandria, Virginia 22313-1450 www.uspto.gov APPLICATION NO. FILING DATE FIRST NAMED INVENTOR ATTORNEY DOCKET NO. CONFIRMATION NO. 15/529,426 05/24/2017 Yaozu Dong P69781US 1132 96162 7590 10/13/2020 Law Office of R. Alan Burnett, PS c/o CPA Global 900 Second Avenue South, Suite 600 Minneapolis, MN 55402 EXAMINER LIU, GORDON G ART UNIT PAPER NUMBER 2612 NOTIFICATION DATE DELIVERY MODE 10/13/2020 ELECTRONIC Please find below and/or attached an Office communication concerning this application or proceeding. The time period for reply, if any, is set in the attached communication. Notice of the Office communication was sent electronically on above-indicated "Notification Date" to the following e-mail address(es): alan@patentlylegal.com docketing@cpaglobal.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE ____________________ BEFORE THE PATENT TRIAL AND APPEAL BOARD ____________________ Ex parte YAOZU DONG and KUN TIAN ____________________ Appeal 2020-001059 Application 15/529,426 Technology Center 2600 ____________________ Before JOSEPH L. DIXON, ROBERT E. NAPPI, and, JASON J. CHUNG, Administrative Patent Judges. NAPPI, Administrative Patent Judge. DECISION ON APPEAL Appellant1 appeals under 35 U.S.C. § 134(a) from the Examiner’s final rejection of claims 26 through 50. We have jurisdiction under 35 U.S.C. § 6(b). We reverse. 1 We use the word Appellant to refer to “applicant” as defined in 37 C.F.R. § 1.42(a). According to Appellant, Intel Corporation, is the real party-in- interest. Appeal Br. 3. Appeal 2020-001059 Application 15/529,426 2 CLAIMED SUBJECT MATTER The claims relate generally to high availability Graphical Processor Unit (GPU) computing with virtual machine checkpointing. Spec. Abstract. Claim 26 is reproduced below. 26. A method comprising implementing at least one virtual machine (VM) on a compute platform including a central processing unit (CPU), a graphics processing unit (GPU), and graphics memory, each of the at least one virtual machine hosted by a hypervisor executed via the CPU; for each of at least one VM, trapping GPU commands submitted from the VM; emulating, using a virtual GPU associated with the VM, changes to state information for the GPU that are predicted to result when the trapped GPU commands are executed by the GPU; predicting graphics memory pages that might be dirtied via execution of trapped GPU commands by the GPU; and periodically performing a VM checkpointing operation for the VM, wherein a snapshot of changes to the state information for the GPU and a copy of the graphics memory pages that are predicted to-be-dirtied are stored as a VM checkpoint. EXAMINER’S REJECTIONS2 The Examiner rejects claims 26 through 42, and 45 through 50 under 2 Throughout this Decision we refer to the Appeal Brief filed June 26, 2019 (“Appeal Br.”); Reply Brief filed November 20, 2019 (“Reply Br.”); Final Office Action mailed January 30, 2019 (“Final Act.”); and the Examiner’s Answer mailed September 26, 2019 (“Ans.”). Appeal 2020-001059 Application 15/529,426 3 35 U.S.C. § 103 as unpatentable over the combined teachings of Stone (US 2011/0134111 A1), Hiltgen (US 2008/0155169 A1) and Yin (US 2013/0185716 A1). Final Act. 8–33. The Examiner rejects claims 43 and 44 under 35 U.S.C. § 103 as unpatentable over the combined teachings of Stone, Hiltgen Yin and Earl (US 9,201,887 B1). Final Act. 33–35. ANALYSIS We have reviewed Appellant’s arguments in the Appeal Brief, the Examiner’s rejections, and the Examiner’s response to Appellant’s arguments. Appellant’s arguments have persuaded us of error in the Examiner’s rejection of all of the claims under 35 U.S.C. § 103. Independent claim 26 Appellant presents several arguments directed to the Examiner’s obviousness rejection of claim 26. Appeal Br. 14– 37. The dispositive issue presented by these arguments is did the Examiner err in finding the combination of Stone, Hiltgen and Yin teach the claim 26 limitations of “predicting graphics memory pages that might be dirtied via execution of trapped GPU commands” and “a snapshot of changes to the state information of the GPU and a copy of the graphics memory pages that are predicted to-be-dirtied are stored as a VM checkpoint.” Appellant summarizes Stone as directed to a scheme for remote rendering of three dimensional images using virtual machines in which a hypervisor allocates to a virtual machine, exclusive direct asses to a GPU. Id. at 18. A second virtual machine intercepts three dimension draw commands generated by an application and forwards the intercepted commands to the first virtual machine to which the GPU is allocated. Id. 18–19. Appellant summarizes Appeal 2020-001059 Application 15/529,426 4 Hiltgen as directed to implementing a virtual machine using storage system functionality, where the state data for the virtual machine is represented on the storage system. Id. at 19. Appellant asserts that there is no mention of a GPU in Hiltgen and that a virtual machine is not analogous to emulating a GPU. Id. at 19 and 23. Further, Appellant argues that the prediction aspect of claim 26 is not taught by Hiltgen. Id. at 24. Appellant argues: migration of a VM involves migrating its current state, which would include that current state of memory pages allocated by the VMM or Hypervisor for use by the VM. The dirty pages reflect pages that have actually been dirtied (i.e., changed), as opposed to pages that might be dirtied via execution of trapped GPU commands by the GPU. The reason for tracking dirtied pages under Hiltgen is so that pages that have been allocated to a VM but have yet to be used (and thus not dirtied) do not need to be paged out. There would be no point in storing data for such unused pages. Again, these pages aren’t predicted to be dirtied (for any reason, much less via execution of trapped GPU commands by a (non-existent) GPU) under Hiltgen, but are, in fact, dirtied pages. An Examiner interview was conducted between the undersigned representative and the Examiner on March 12, 2019 to discuss the rejection of the claims in the Final Office Action. In particular, the rejection of claim elements including the limitation, “predicting graphics memory pages that might be dirtied via execution of trapped GPU commands by the GPU” were discussed. The Examiner acknowledged that Hiltgen’s teaching of tracking memory pages and checking whether pages are dirtied or not does not teach this claim limitation, as predicting pages that might be dirtied would be done before the pages would be dirtied (in advance of the pages being dirtied), while tracking pages to check whether the page(s) is/are dirtied could only be done after the page(s) is/are dirtied. Appeal 2020-001059 Application 15/529,426 5 Appeal Br. 26–27 (referring to Hiltgen ¶ 110). The Examiner responds to Appellant’s arguments, concerning the dispositive issue, stating: Hiltgen teaches that the state data is paged out and there is an indication if the page includes new data. These data are sent to the storage unit, and the destination virtualization layer is monitoring the storage layer; in addition, these data may be sent to the destination virtualization layer directly. If these data reach a limit, the destination virtualization layer may request new pages. Whether the destination virtualization layer requests new page or not depend on the new data (See Hiltgen: Fig. 16, and [0110], “For example, dirty pages may be tracked and re-synchronized iteratively. The source virtualization system also indicates if a page includes new data in the network storage unit. Instead of, or in addition to, writing an indication into the network storage unit, the source may inform the destination directly, (e.g., over an IP network). If the virtualization layer of the destination virtualization system detects the new data indication, then it requests the one or more new pages. Requested pages are then loaded into the destination virtualization system by the virtualization layer. These operations repeat until a given limit is achieved”), and this feature may be corresponding to the “prediction” feature claimed in the claim 26. Answer 4–5. We disagree with the Examiner’s finding that Hiltgen teaches the claimed prediction. Claim 26 recites “predicting graphics memory pages that might be dirtied via execution of trapped GPU commands by the GPU.” Thus, the claimed prediction of pages that may (i.e. looking to the future) be dirtied, not pages that have been (looking to the past) dirtied (changed memory), we do not consider repeating the detecting a new data indication Appeal 2020-001059 Application 15/529,426 6 to be predicting dirtied memory, rather it appears to be an indication that memory is dirtied. Thus, we do not consider the Examiner to have shown that the combination of Stone, Hiltgen and Yin teaches all of the limitations of independent claim 26, and we do not sustain the rejection of independent claim 26 and claims 27 through 34 which depend upon claim 26. Independent claims 35 and 46 Appellant presents several arguments directed to the Examiner’s obviousness rejection of claim 35 and 46. Appeal Br. 47-52 and 55. The dispositive issue presented by these arguments is did the Examiner err in finding the combination of Stone, Hiltgen Yin teach the claim 35 and 46 limitations directed to “trap[ing] access to predetermined GPU resources made by the graphics driver.” Id. 46–53, 55. Appellant argues that the only thing trapped in Stone are the three dimensional drawing commands and not the resources access to GPU resources. Id. at 49–50 (citing Stone ¶ 60). The Examiner does not persuasively respond to Appellant’s specific arguments regarding claims 35 and 46 other than that the rejection is proper for the reasons discussed in response to the rejection of claim 26. In the Final Action, the Examiner cites to Stone paragraph 90 as teaching trapping commands from the graphics driver and to Stone paragraph 60 as teaching trapping GPU resources. Final Act. 18. We are persuaded of error in the Examiner’s rejection by Appellant’s arguments. Initially, we note that independent claims 26 is of different scope than claims 35 and 46, in that claim 26 does not recite trapping resources of the GPU as recited in claims 35 and 46. Thus, the Examiner’s response to the Appellant’s arguments concerning claim 26 do not directly Appeal 2020-001059 Application 15/529,426 7 apply to this limitation. Further, we have reviewed the paragraphs of Stone cited by the Examiner in the Final Action, and we do not find that they discuss trapping resources of the GPU nor has the Examiner explained how the cited paragraphs teach or suggest trapping resources. Thus, we do not consider the Examiner to have persuasively shown that the combination of Stone, Hiltgen and Yin teaches all of the limitations of independent claims 35 and 46. Accordingly, we do not sustain the rejection of independent claim 35 and 46, or the rejection of 36 through 42, 45, and 47 through 50 which depend upon claims 35 and 46. The Examiner’s rejection of claims 43 and 44, similarly rely upon the teachings of Stone, Hiltgen, and Yin to teach the limitations of independent claim 34 upon which they ultimately depend. Final Act. 33. Thus, we similarly do not sustain the Examiner’s rejection of these claims for the same reasons as discussed with respect to claim 35. CONCLUSION In summary: Claim Rejected 35 U.S.C. § Reference(s)/ Basis Affirmed Reversed 26–42, 45– 50 103 Stone, Hiltgen, Yin 26–42, 45–50 43, 44 103 Stone, Hiltgen, Yin, Earl 43, 44 Overall Outcome 26–50 REVERSED Copy with citationCopy as parenthetical citation