Ex Parte Chakraborty et alDownload PDFPatent Trial and Appeal BoardDec 27, 201612874235 (P.T.A.B. Dec. 27, 2016) 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. 12/874,235 09/02/2010 Parag Chakraborty 330051.01 6823 69316 7590 12/29/2016 MICROSOFT CORPORATION ONE MICROSOFT WAY REDMOND, WA 98052 EXAMINER HILL, SCHILLER D ART UNIT PAPER NUMBER 2614 NOTIFICATION DATE DELIVERY MODE 12/29/2016 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): u sdocket @ micro soft .com chriochs @microsoft.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE BEFORE THE PATENT TRIAL AND APPEAL BOARD Ex parte PARAG CHAKRABORTY, HAO ZHANG, PAREEKSHIT SINGH, and PANDELE STANESCU1 Appeal 2016-000873 Application 12/874,235 Technology Center 2600 Before ALLEN R. MacDONALD, HUNG H. BUI, and MICHAEL M. BARRY, Administrative Patent Judges. BARRY, Administrative Patent Judge. DECISION ON APPEAL Appellants appeal under 35 U.S.C. § 134(a) from a Non-Final Rejection of claims 1—20. We have jurisdiction under 35 U.S.C. § 6(b). We AFFIRM. Introduction Appellants’ claims are directed to systems and methods in which a virtual machine (VM) has a virtual graphics processing unit (VGPU) that may be reset or restarted. (Abstract, Claims.) Claim 1 is illustrative: 1. A system comprising: a processor; 1 Appellants identify the real party in interest as Microsoft Technology Licensing, LLC. (App. Br. 1.) Appeal 2016-000873 Application 12/874,235 a first virtual machine operable on said processor, said first virtual machine having a first virtual graphics processing unit; a hypervisor operable on said processor, said hypervisor comprising a graphics processor unit thread configured to receive instructions from a virtual graphics processing unit and cause said instructions to be performed; and said hypervisor further configured to detect that said first virtual machine is being restored and cause said first virtual graphics processing unit to be reset. (App. Br. 8 (App’x A).) References and Rejections (1) Claims 1—9 and 17—19 stand rejected under 35 U.S.C. § 103(a) as obvious over Micah Dowty et al., GPU Virtualization on VMware’s Hosted I/O Architecture, 43(3) ACM SIGOPS Operating Systems Review, 73-82 (July 2009) (“Dowty”) and Belay (US 2010/0250824 Al; publ. Sept. 30, 2010). (Non-Final Act. 2-18.) (2) Claims 11—16 stand rejected under 35 U.S.C. § 103(a) as obvious over Belay and Dowty. (Non-Final Act. 19—24.) (3) Claims 10 and 20 stand rejected under 35 U.S.C. § 103(a) as obvious over Dowty, Belay, and Arndt et al. (US 2006/0195673 Al; publ. Aug. 31, 2006) (“Arndt”). (Non-Final Act. 24-29.) ANALYSIS We have reviewed the Examiner’s rejections in light of Appellants’ contentions of reversible error. We disagree with Appellants’ conclusions. We adopt the Examiner’s findings and reasons as set forth in the rejection from which this appeal is taken and as set forth in the Answer. We highlight the following for emphasis. 2 Appeal 2016-000873 Application 12/874,235 Motivation to Combine Dowty and Belay Appellants argue the Examiner errs in finding motivation to combine the teachings of Dowty and Belay because essentially it means “one of ordinary skill in the art would be motivated to emulate already emulated devices. ... If one were to emulate an already emulated device the result would be a more complicated and less efficient system than already exists.” (App. Br. 9.) We find this unpersuasive. The Examiner responds, and we agree, that “the combination of Dowty with Belay would use the restore/ migrate functionality of Belay in the virtualization system of Dowty” so that “when the system of Dowty performs the restore/migration function of Belay, the reinitialization would be on the VGPU present in Dowty.” (Ans. 3; see also Non-Final Act. 4—5).) The Examiner also finds, and we also agree, that by using Belay’s reinitialization/reset method during Dowty’s migration or save/restore operation, “the hybrid implementation of the mediated pass-through VGPU would be reinitialized in the same manner as the pass-through device of Belay. This combination would result in significant improvement in more advanced interposition features such as live migration and migration across different models of physical GPUs.” (Ans. 5 (citing Belay 118).) Regarding emulation of an already emulated device, the Examiner responds by finding, and we agree, that: Belay does not generate an emulator/emulated device for the pass-through device. The mappings of the pass-through device are replaced with mappings of an emulation handler, in effect freezing the state of the pass-through device since the emulation handler [responds] to requests as though the device is experiencing a hardware failure. The state of the virtual machine is then migrated, and the emulation handlers trigger a 3 Appeal 2016-000873 Application 12/874,235 reinitialisation of the pass-through device. The emulation handlers are not emulated devices.” (Ans. 8.) Appellants reply that Belay’s emulation handlers are emulated versions of the pass-through devices because, during migration, “the emulated handlers while not being fully functional take the place of the actual pass through device and report that they have failed.” (Reply Br. 2.) We find this unpersuasive. Belay’s emulation handlers simulate the pass through device. (See, e.g., Belay Abstract (“the pass-through device is substituted with an emulation handler that simulates the pass-through device experiencing errors”).) Simulation is not emulation. (See, e.g., https:// en.wikipedia.org /wiki/Emulator (introducing the emulator topic with “/n]ot to be confused with Simulator”).) Claim 1 Appellants also argue the Examiner errs in finding Belay teaches or suggests claim l’s requirement to “detect that said first virtual machine is being restored and cause said first virtual graphics processing unit to be reset.” (App. Br. 10.) Appellants contend “the process in Belay does not reset the virtual device; rather, it simply removes the emulator from the system and reconfigures the portion of the physical pass through device.” (Id.) Appellants further contend: in Belay the requests are initiated or controlled by the device drivers and not by the hypervisor itself in response to an error signal generated by the hypervisor. The hypervisor in Belay does not have the ability to actually reset the device; it only produces the signal that causes components in the virtual machine to generate commands to reinitialize a pass through device. (Id. at 11.) 4 Appeal 2016-000873 Application 12/874,235 Appellants do not persuade us. We agree with the Examiner’s finding that “removal of the emulation handler [i.e., the emulator Appellants refer to] is not considered to be a reset. The VGPU of Dowty would be the device that is reinitialized [(i.e., reset in the vernacular of the claim)].” (Ans. 11.) We also agree with the Examiner that “intercepting and forwarding of the [reset] request as Belay teaches ([0005]) would be considered as ‘causing’ the [reset]” as claimed. {Id. at 12 (replacing “reinitialization” with “reset”; bracketed paragraph number in original).) We accordingly sustain the rejection of claim 1, and the rejections of its dependent claims 2—10, for which Appellants provide no separate arguments. Claim 17 Independent claim 17 recites a method that requires, inter alia, “detecting that said first virtual machine has resumed” and “causing said first virtual graphics processing unit to be restarted based on said resume by resetting the first virtual graphics processing unit without resetting another virtual graphics processing unit associated with another virtual machine operating on the hypervisor” (App. Br. 13). Appellants argue the Examiner errs in finding Belay teaches resetting one VGPU without resetting another associated VGPU as claimed because: Belay does not have the capability of restarting only the portion of the device associated with the virtual machine without affecting the device associated with other virtual machines. In Belay, if a restart or reset occurred on the pass through device that restart or reset would impact other virtual machines operating on the pass through device. (App. Br. 14.) 5 Appeal 2016-000873 Application 12/874,235 The Examiner responds by finding basic hypervisor functionality includes the capability to manage multiple VMs and selectively reset an individual VM: A hypervisor may manage many virtual machines which are operating on many virtual hardware platforms. Each individual VM interacts with emulated devices on its virtual hardware platform, and therefore, any requests to restore/migrate a VM or any requests to reinitialize, restart, or reset a virtual/emulated device on the VM’s virtual hardware platform (VHP) would be performed without [a]ffecting any other VM/VHP that [is] concurrently running in the execution space. (Ans. 16.) We agree with the Examiner. We also note Appellants provide no rebuttal to these findings (see Reply Br. 1 4). We accordingly sustain the rejection of claim 17, and the rejections of its dependent claims 18—20, for which Appellants provide no separate arguments. Claim 11 Appellants argue the Examiner errs in rejecting independent method claim 11 for reasons similar to claim 1. For the same reasons as for claim 1, we sustain the rejection of claim 11, and the rejection of its dependent claims 12—16, for which Appellants provide no separate arguments. DECISION For the above reasons, we affirm the rejections of claims 1—20. No time period for taking any subsequent action in connection with this appeal maybe extended under 37 C.F.R. § 1.136(a)(l)(iv). AFFIRMED 6 Copy with citationCopy as parenthetical citation