Patents by Inventor Kevin N. Magill
Kevin N. Magill has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9395992Abstract: There is provided a method and system for replacing an instruction with another instruction. A match register stores an opcode that identifies an instruction to be replaced. A swap register stores an instruction that replaces the identified instruction. A multiplexer chooses the instruction stored in the swap register over the identified instruction if predecode bits of the identified instruction are set.Type: GrantFiled: November 19, 2012Date of Patent: July 19, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Richard W. Doing, Ronald Hall, Kevin N. Magill, James O. Tingen, Todd A. Venton
-
Patent number: 9275149Abstract: A method, a system and a computer program product for influencing ranking of URLs in a search engine. In an example embodiment, a computer determines that a posting of a URL has occurred in a social networking environment, the computer tracks accesses of the URL subsequent to the posting of the URL. The computer further determines whether a number of accesses of the URL has increased subsequent to the posting of the URL and, responsive to determining that the number of accesses of the URL has increased subsequent to the posting of the URL, the computer determines whether the number of accesses of the URL has increased by at least a predefined threshold. Further, responsive to determining that the number of accesses of the URL has increased by at least the predefined threshold, the computer increases the ranking of the URL in a search engine.Type: GrantFiled: August 22, 2012Date of Patent: March 1, 2016Assignee: International Business Machines CorporationInventors: Kevin N. Magill, Michael S. O'Leary, Mary K. Rees, Michael S. Thomason
-
Publication number: 20140143521Abstract: There is provided a method and system for replacing an instruction with another instruction. A match register stores an opcode that identifies an instruction to be replaced. A swap register stores an instruction that replaces the identified instruction. A multiplexer chooses the instruction stored in the swap register over the identified instruction if predecode bits of the identified instruction are set.Type: ApplicationFiled: November 19, 2012Publication date: May 22, 2014Applicant: International Business Machines CorporationInventors: Richard W. Doing, Ronald Hall, Kevin N. Magill, James O. Tingen, Todd A. Venton
-
Publication number: 20140059029Abstract: A method, a system and a computer program product for influencing ranking of URLs in a search engine. In an example embodiment, a computer determines that a posting of a URL has occurred in a social networking environment, the computer tracks accesses of the URL subsequent to the posting of the URL. The computer further determines whether a number of accesses of the URL has increased subsequent to the posting of the URL and, responsive to determining that the number of accesses of the URL has increased subsequent to the posting of the URL, the computer determines whether the number of accesses of the URL has increased by at least a predefined threshold. Further, responsive to determining that the number of accesses of the URL has increased by at least the predefined threshold, the computer increases the ranking of the URL in a search engine.Type: ApplicationFiled: August 22, 2012Publication date: February 27, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Kevin N. Magill, Michael S. O'Leary, Mary K. Rees, Michael S. Thomason
-
Publication number: 20120192290Abstract: An apparatus and system are disclosed for filtering third-party generated content in a social network. A receive module receives, from a requesting third-party user, a request to view third-party generated content that is generated by one or more third-party users of a social network. A group module determines one or more group permissions set by a user for one or more groups. The one or more group permissions define access to the third-party generated content. A filter module filters the third-party generated content according to the one or more group permissions such that the third-party generated content is filtered prior to presentation of the third-party generated content to the requesting third-party user in response to the request.Type: ApplicationFiled: March 14, 2012Publication date: July 26, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Christopher B. Barefoot, Tyler I. Carper, David D. Dukro, Kevin N. Magill, Michael S. O'Leary, M. Scott Thomason
-
Publication number: 20120109835Abstract: An apparatus, system, and method are disclosed for filtering third-party generated content in a social network. The method may involve receiving a request to view third-party generated content in a social network. The method may involve determining the group permissions that are set by the user for one or more groups. The user may define group membership. The group permissions define the access privileges to the third-party generated content. The method may also involve filtering the third-party generated content according to the group permissions such that the third-party generated content is filtered prior to its presentation to the requesting third-party user. As a result, certain third-party generated content may be hidden from certain third-party users. In certain embodiments, the user can set individual permissions governing access to the third-party generated content.Type: ApplicationFiled: October 28, 2010Publication date: May 3, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Christopher B. Barefoot, Tyler I. Carper, David D. Dukro, Kevin N. Magill, Michael S. O'Leary, M. Scott Thomason
-
Patent number: 8131967Abstract: An interface system is disclosed. In one embodiment, the system includes a buffer that receives data from a source in a first clock domain and stores the data to be read by a destination in a second clock domain, wherein the buffer functions in both the first clock domain and the second clock domain; a write pointer that points to data written by the source; and a read pointer that points to data read by the destination. According to the system and method disclosed herein, the write pointer and the read pointer are utilized to enable the data to be transmitted from the first clock domain to the second clock domain asynchronously.Type: GrantFiled: January 11, 2007Date of Patent: March 6, 2012Assignee: International Business Machines CorporationInventors: Scott J. Lemke, Kevin N. Magill, Michael S. Siegel
-
Patent number: 8131976Abstract: Mechanisms, in a data processing system, are provided for tracking effective addresses through a processor pipeline of the data processing system. The mechanisms comprise logic for fetching an instruction from an instruction cache and associating, by an effective address table logic in the data processing system, an entry in an effective address table (EAT) data structure with the fetched instruction. The mechanisms further comprise logic for associating an effective address tag (eatag) with the fetched instruction, the eatag comprising a base eatag that points to the entry in the EAT and an eatag offset. Moreover, the mechanisms comprise logic for processing the instruction through the processor pipeline by processing the eatag.Type: GrantFiled: April 13, 2009Date of Patent: March 6, 2012Assignee: International Business Machines CorporationInventors: Richard W. Doing, Susan E. Eisen, David S. Levitan, Kevin N. Magill, Brian R. Mestan, Balaram Sinharoy, Benjamin W. Stolt, Jeffrey R. Summers, Albert J. Van Norstrand, Jr.
-
Patent number: 7966435Abstract: A design structure embodied in a machine readable storage medium for designing, manufacturing, and/or testing a design, the design structure comprising for an interface system is disclosed. The system includes a buffer that receives data from a source in a first clock domain and stores the data to be read by a destination in a second clock domain, wherein the buffer functions in both the first clock domain and the second clock domain; a write pointer that points to data written by the source; and a read pointer that points to data read by the destination. According to the design structure, the write pointer and the read pointer are utilized to enable the data to be transmitted from the first clock domain to the second clock domain asynchronously.Type: GrantFiled: April 18, 2008Date of Patent: June 21, 2011Assignee: International Business Machines CorporationInventors: Scott J. Lemke, Kevin N. Magill, Michael S. Siegel
-
Publication number: 20100262813Abstract: Mechanisms, in a processor, are provided for detecting and handling short forward branch conversion candidates. The mechanisms identify a conditional branch in the computer code and determine if the short forward conditional branch is to be converted to a non-branching conditional sequence of instructions. Moreover, the mechanisms convert the conditional branch to a non-branching conditional sequence of instructions comprising a resolve instruction and one or more conditional instructions dependent on the resolve instruction. In addition, the mechanisms execute the non-branching conditional sequence of instructions in place of the conditional branch in the computer code and generate an output of the computer code based on the execution of the non-branching conditional sequence of instructions.Type: ApplicationFiled: April 14, 2009Publication date: October 14, 2010Applicant: International Business Machines CorporationInventors: Mary D. Brown, Richard W. Doing, Kevin N. Magill, Brian R. Mestan, Wolfram M. Sauer, Balaram Sinharoy, Jeffrey R. Summers, Albert J. Van Norstrand, JR.
-
Publication number: 20100262806Abstract: Mechanisms, in a data processing system, are provided for tracking effective addresses through a processor pipeline of the data processing system. The mechanisms comprise logic for fetching an instruction from an instruction cache and associating, by an effective address table logic in the data processing system, an entry in an effective address table (EAT) data structure with the fetched instruction. The mechanisms further comprise logic for associating an effective address tag (eatag) with the fetched instruction, the eatag comprising a base eatag that points to the entry in the EAT and an eatag offset. Moreover, the mechanisms comprise logic for processing the instruction through the processor pipeline by processing the eatag.Type: ApplicationFiled: April 13, 2009Publication date: October 14, 2010Applicant: International Business Machines CorporationInventors: Richard W. Doing, Susan E. Eisen, David S. Levitan, Kevin N. Magill, Brian R. Mestan, Balaram Sinharoy, Benjamin W. Stolt, Jeffrey R. Summers, Albert J. Van Norstrand, JR.
-
Patent number: 7779232Abstract: A method and apparatus for dynamically managing instruction buffer depths for non-predicted branches reduces wasted energy and resources associated with low confidence branch prediction conditions. A portion of the instruction buffer for a instruction thread is allocated for storing predicted branch instruction streams and another portion, which may be zero-sized during high prediction confidence conditions, is allocated to the non-predicted branch instruction stream. The size of the buffers is adjusted dynamically in conformity with an on-going prediction confidence that provides a measure of how well branch prediction mechanisms are working for a given instruction thread. An alternate instruction fetch address table can be maintained and multiplexed with the main fetch address register for addressing the instruction cache, so that the instruction stream can be quickly shifted to the non-predicted path when a branch instruction is resolved to the non-predicted path.Type: GrantFiled: August 28, 2007Date of Patent: August 17, 2010Assignee: International Business Machines CorporationInventors: Richard W. Doing, Michael O. Klett, Kevin N. Magill, Brian R. Mestan, David Mui, Balaram Sinharoy, Jeffrey R. Summers
-
Publication number: 20090063819Abstract: A method and apparatus for dynamically managing instruction buffer depths for non-predicted branches reduces wasted energy and resources associated with low confidence branch prediction conditions. A portion of the instruction buffer for a instruction thread is allocated for storing predicted branch instruction streams and another portion, which may be zero-sized during high prediction confidence conditions, is allocated to the non-predicted branch instruction stream. The size of the buffers is adjusted dynamically in conformity with an on-going prediction confidence that provides a measure of how well branch prediction mechanisms are working for a given instruction thread. An alternate instruction fetch address table can be maintained and multiplexed with the main fetch address register for addressing the instruction cache, so that the instruction stream can be quickly shifted to the non-predicted path when a branch instruction is resolved to the non-predicted path.Type: ApplicationFiled: August 28, 2007Publication date: March 5, 2009Inventors: Richard W. Doing, Michael O. Klett, Kevin N. Magill, Brian R. Mestan, David Mui, Balaram Sinharoy, Jeffrey R. Summers
-
Patent number: 7467366Abstract: A method for generating a timing path software monitor for identifying a critical timing path in hardware devices coupled between first and second components is provided. The method includes generating a static timing report associated with the hardware devices. The static timing report has names of the hardware devices and wire names associated with wires coupled to the hardware devices. The method further includes automatically generating the timing path software monitor based on the static timing report that monitors binary values associated with the wire names at a first clock cycle and a transition of binary values associated with the wire names during a second clock cycle after the first clock cycle. The timing path software monitor indicates a critical timing path is identified when the transition of one of the binary values received by the second component occurs during the second clock cycle.Type: GrantFiled: September 26, 2006Date of Patent: December 16, 2008Assignee: International Business Machines CorporationInventors: John B. Blankenship, Kevin N. Magill, Jeffrey R. Summers, Anup Wadia
-
Publication number: 20080195774Abstract: A design structure embodied in a machine readable storage medium for designing, manufacturing, and/or testing a design, the design structure comprising for an interface system is disclosed. The system includes a buffer that receives data from a source in a first clock domain and stores the data to be read by a destination in a second clock domain, wherein the buffer functions in both the first clock domain and the second clock domain; a write pointer that points to data written by the source; and a read pointer that points to data read by the destination. According to the design structure, the write pointer and the read pointer are utilized to enable the data to be transmitted from the first clock domain to the second clock domain asynchronously.Type: ApplicationFiled: April 18, 2008Publication date: August 14, 2008Inventors: Scott J. Lemke, Kevin N. Magill, Michael S. Siegel
-
Publication number: 20080172540Abstract: An interface system is disclosed. In one embodiment, the system includes a buffer that receives data from a source in a first clock domain and stores the data to be read by a destination in a second clock domain, wherein the buffer functions in both the first clock domain and the second clock domain; a write pointer that points to data written by the source; and a read pointer that points to data read by the destination. According to the system and method disclosed herein, the write pointer and the read pointer are utilized to enable the data to be transmitted from the first clock domain to the second clock domain asynchronously.Type: ApplicationFiled: January 11, 2007Publication date: July 17, 2008Applicant: International Business Machines CorporationInventors: Scott J. LEMKE, Kevin N. Magill, Michael S. Siegel
-
Publication number: 20080077895Abstract: A method for generating a timing path software monitor for identifying a critical timing path in hardware devices coupled between first and second components is provided. The method includes generating a static timing report associated with the hardware devices. The static timing report has names of the hardware devices and wire names associated with wires coupled to the hardware devices. The method further includes automatically generating the timing path software monitor based on the static timing report that monitors binary values associated with the wire names at a first clock cycle and a transition of binary values associated with the wire names during a second clock cycle after the first clock cycle. The timing path software monitor indicates a critical timing path is identified when the transition of one of the binary values received by the second component occurs during the second clock cycle.Type: ApplicationFiled: September 26, 2006Publication date: March 27, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: John B. Blankenship, Kevin N. Magill, Jeffrey R. Summers, Anup Wadia