Patents Issued in December 31, 2015
  • Publication number: 20150378696
    Abstract: Hybrid parallelization strategies for machine learning programs on top of MapReduce are provided. In one embodiment, a method of and computer program product for parallel execution of machine learning programs are provided. Program code is received. The program code contains at least one parallel for statement having a plurality of iterations. A parallel execution plan is determined for the program code. According to the parallel execution plan, the plurality of iterations is partitioned into a plurality of tasks. Each task comprises at least one iteration. The iterations of each task are independent.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Matthias Boehm, Douglas Burdick, Berthold Reinwald, Prithviraj Sen, Shirish Tatikonda, Yuanyuan Tian, Shivakumar Vaithyanathan
  • Publication number: 20150378697
    Abstract: Methods, systems, and computer program products are provided that enable incremental compilation of source code. Attributes of an intermediate language (IL) representation and a compiled representation of a source code are stored. Modified source code that is a revised version of the first source code is received. An IL representation of the modified source code is generated. Attributes of the revised intermediate IL and the stored attributes of the IL representation are compared to determine a first set of functions changed in the modified source code. A second set of functions in the first source code is determined that includes functions affected the determined first set of functions. The first and second sets of functions are compiled to generate a set of compiled functions. Compiled versions of the first and second sets are replaced in the compiled representation of the first source code with the set of compiled functions.
    Type: Application
    Filed: June 25, 2014
    Publication date: December 31, 2015
    Inventors: Patrick W. Sathyanathan, Ten H. Tzen, Wenlei He, Ankit Asthana, Adrian Militaru
  • Publication number: 20150378698
    Abstract: Aspects of the present invention provide a solution for compiling data in a plurality of modes. In an embodiment, at least one optimal mode is specified for each of a set of program language constructs and each of a set of language primitives in a first language. A set of optimal mode code is generated in the at least one mode in a second language. A set of bridge code is generated. A set of additional mode code is generated in a plurality of other modes in the second language, wherein the generating utilizes the bridge code. The generated optimal mode code and additional mode code is compiled.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Scott Boag, Moshe M. E. Matsa, Kristoffer H. Rose, Naoto Sato, Lionel A. S. Villard
  • Publication number: 20150378699
    Abstract: A graphical screen element which is displayable on at least one screen of at least one computer device; with the aid of the screen element useful data for different application programs being manageable in a program-spanning manner; with the aid of the screen element the application programs being able to be linked together.
    Type: Application
    Filed: December 27, 2013
    Publication date: December 31, 2015
    Inventors: Clemens GUENTHER, Christoph NOACK, Ramon AMIRPOUR
  • Publication number: 20150378700
    Abstract: A deployment system enables a developer to define a logical, multi-tier application blueprint that can be used to create and manage (e.g., redeploy, upgrade, backup, patch) multiple applications in a cloud infrastructure. The deployment system supports the use of nested policies to manage a deployment plan. Upon determining compliance to the nested policies, the application can be deployed according to an application blueprint, which means any needed VMs are provisioned from the cloud infrastructure, and application components and software services are installed.
    Type: Application
    Filed: June 26, 2014
    Publication date: December 31, 2015
    Inventors: Raghavendra RACHAMADUGU, Nilesh AGRAWAL, Rakesh SINHA, Vishwas NAGARAJA
  • Publication number: 20150378701
    Abstract: Deployment of builds of upgrade, patches, and the like may be orchestrated using tables that reside outside the scope of any one environment, but that is accessible by the environments. The tables may define the activities that are pending or running in the system, as well as the dependency chains that prevent activities happening out of safe order (for example, a deployment happening on paying customers before happening in test environments). When a new build is available for deployment, it may be detected and new activities for that build listed as pending in the affected environments. Any activities having no prerequisite dependencies may start immediately, while those with prerequisites may wait for the prerequisite activities to be completed. The encoding of dependencies between activities and across environments may enable access to those from any deployment environment.
    Type: Application
    Filed: June 26, 2014
    Publication date: December 31, 2015
    Inventors: Jianfeng Cai, Shobana Krishnamoorthy, Peter Harwood, David Retterath, Brad Smith, Roshane Silva
  • Publication number: 20150378702
    Abstract: Disclosed examples to configure an application for deployment across a plurality of deployment environments involve displaying a user-selectable control in a user interface. The user-selectable control is to specify whether the application is to be deployed across the plurality of deployment environments. Based on selection of the user-selectable control, a blueprint of the application stores an indication of whether the application is to be deployed across the plurality of deployment environments. Based on the indication in the blueprint, an application deployment profile is generated to specify the plurality of deployment environments across which to deploy the application.
    Type: Application
    Filed: August 7, 2014
    Publication date: December 31, 2015
    Inventors: AGILA GOVINDARAJU, Kiran Singh
  • Publication number: 20150378703
    Abstract: Disclosed examples to configure an application blueprint involve, during a design phase, binding a service template to a node of the application blueprint. The application blueprint defines an application to be deployed in a cloud environment. The service template is mapped to a plurality of services that are selectable during a runtime phase to implement the node in the cloud environment. During the runtime phase, a first one of the services is bound to the node of the application blueprint based on the first one of the services being mapped to the service template and being selected during the runtime phase. An application deployment profile is generated based on the binding of the first one of the services to the node.
    Type: Application
    Filed: August 7, 2014
    Publication date: December 31, 2015
    Inventors: AGILA GOVINDARAJU, Kiran Singh, Ashish Kumar Jain
  • Publication number: 20150378704
    Abstract: Techniques for converting desktop applications into cloud services are provided. In one embodiment, a server system can receive a representation of an application that has been extracted from an installation of the application on an end-user computing device. The representation can include a collection of files and configuration information associated with the application. The server system can then store the representation of the application in a server-side repository for deployment as a cloud service.
    Type: Application
    Filed: August 8, 2014
    Publication date: December 31, 2015
    Inventor: Scott Howard Davis
  • Publication number: 20150378705
    Abstract: A method of distributing software objects from a first entity to at least one second entity, the method comprising: using a distribution entity to accept a software object from the first entity, the software object including an identifier for a specific second entity, and wherein the at least one second entity is operable to contact the distribution entity and to enquire if a software object has been deposited for it, and if a software object has been deposited, to accept it from the distribution entity.
    Type: Application
    Filed: August 17, 2015
    Publication date: December 31, 2015
    Inventor: David Robin Tomlinson
  • Publication number: 20150378706
    Abstract: A method, article of manufacture, and apparatus for installing software on disaggregated hardware components are discussed. The disaggregated components may be grouped into a dynamically composed compute node. The compute node may be presented as a virtual computer, and the software may be installed on that virtual computer.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventors: John Roese, Kenneth Durazzo, Stephen Todd
  • Publication number: 20150378707
    Abstract: A mobile terminal including a wireless communication unit configured to provide wireless communication; a touchscreen configured to display at least one page including at least one application icon; and a controller configured to display a first screen for installing a specific application on the touchscreen, display a second screen for setting a position at which an icon corresponding to the specific application will be displayed on the touchscreen after being installed, upon reception of an input for installing the specific application, and display the icon of the specific application at the position on the touchscreen in response to a predetermined touch input on the displayed second screen.
    Type: Application
    Filed: June 9, 2015
    Publication date: December 31, 2015
    Applicant: LG ELECTRONICS INC.
    Inventors: Mihyun PARK, Dongsu HAN, Woohyoung SHIN, Seonghyok KIM, Sungho WOO
  • Publication number: 20150378708
    Abstract: A system for adapting virtual computing resource (e.g., virtual machine) templates for use with new software platforms without modifying, or otherwise requiring recertification of, the template itself is disclosed. The system enables the installation of a software agent to be bootstrapped to the installation and execution of an agent already included in a template. Installation of the bootstrapped software agent may be performed automatically during initial provisioning of a virtual machine with little or no additional effort required from an administrator. Accordingly, embodiments of the disclosure enable preexisting templates to repurposed for use with new and/or more advanced cloud management platforms.
    Type: Application
    Filed: September 4, 2015
    Publication date: December 31, 2015
    Inventors: Vishwas NAGARAJA, Intesar MOHAMMED
  • Publication number: 20150378709
    Abstract: A solution for installing software applications on a mobile computing device is proposed. A corresponding method comprises monitoring a position of the mobile computing device, selecting one or more software applications available to be installed on the mobile computing device according to the position of the mobile computing device, and installing the selected software applications in a container of the mobile computing device providing an execution environment for the selected software applications with controlled access to one or more resources of the mobile computing device.
    Type: Application
    Filed: June 3, 2015
    Publication date: December 31, 2015
    Inventors: Alessio D'Amico, Filomena Ferrara, Fabrizio Loppini, Marco Morucci, Roberto Ragusa
  • Publication number: 20150378710
    Abstract: In one embodiment, a patch application system 330 for a server farm 310 may be programmatically integrated with a monitoring service 340 to allow for prompt reaction to a patching error. The patch application system 330 may implement a patch application 500 to a server farm 310. The patch application system 330 may receive an error notice 600 describing a patching error from a monitoring service 340. The patch application system 330 may automatically execute a response action to the patching error.
    Type: Application
    Filed: June 28, 2014
    Publication date: December 31, 2015
    Applicant: MICROSOFT CORPORATION
    Inventors: Samuel Kabue, Shobana Krishnamoorthy, Jianfeng Cai, Roshane Silva
  • Publication number: 20150378711
    Abstract: In a computer-implemented method for a unified visualization of a plan of operations in a datacenter, a selection of a target from a plurality of targets in a datacenter is enabled for scheduling operations on the selected target. Selection of one or more software bundles is enabled, wherein the plan of operations on the selected target are based on the one or more software bundles. A unified visualization of the plan of operations on the selected target is displayed via a unified browser, wherein the unified browser displays the plan of operations with a common look and feel.
    Type: Application
    Filed: June 28, 2014
    Publication date: December 31, 2015
    Inventors: Stefan CAMERON, John POWELL, Patrick DEVINE, Mustafa JAMIL, Daniel HILTGEN
  • Publication number: 20150378712
    Abstract: In a computer-implemented method for selection of relevant software bundles selection of targets in a datacenter for updating software associated with the targets is enabled. In response to the selection, software bundles relevant for updating software associated with at least one of the selected targets are displayed. Selection of the software bundles is enabled.
    Type: Application
    Filed: June 28, 2014
    Publication date: December 31, 2015
    Inventors: Stefan CAMERON, John POWELL
  • Publication number: 20150378713
    Abstract: In a computer-implemented method for scheduling a plan of operations in a datacenter selection of a target from a plurality of targets in the datacenter is enabled for scheduling operations on the selected target. Selection of one or more bundles is enabled, wherein the plan of operations on the selected target are based on the one or more bundles. Dependency relationships between the selected target and other targets in the plurality of targets are determined based on the selection of one or more bundles. The plan of operations on the selected target is scheduled.
    Type: Application
    Filed: June 28, 2014
    Publication date: December 31, 2015
    Inventors: John POWELL, Patrick DEVINE, Mustafa JAMIL, Daniel HILTGEN, Timothy STACK, Saleem ABDULRASOOL, Moshe ZADKA, Kshitij PADALKAR
  • Publication number: 20150378714
    Abstract: In some embodiments, an update server receives an update request for an instance of a client application executed at a computing system. The update request includes context data describing an attribute of the computing system. If an update for the client application modifies a feature of the instance of client application associated with the described attribute, the update server provides the update to the computing system. The update server also receives an update request for an additional instance of the client application executed at another computing system. The additional update request includes context data describing an attribute of the additional computing system. If an available update modifies a feature of the additional instance of the client application that is associated with the described attribute, the update server provides the update to the additional computing system. If not, the update server notifies the additional computing system that no updates are available.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventors: Saransh Katariya, Mansukh Patidar, Ashish Mehta
  • Publication number: 20150378715
    Abstract: Systems and methods for updating software in a hazard detection system are described herein. Software updates may be received by, stored within, and executed by a hazard detection system, without disturbing the system's ability to monitor for alarm events and sound an alarm in response to a monitored hazard event. The software updates may be received as part of a periodic over-the-air communication with a remote server or as part of a physical connection with a data source such as a computer. The software updates may include several portions of code designed to operate with different processors and/or devices within the hazard detection system. The software updates may also include language specific audio files that can be accessed by the hazard detection system to play back language specific media files via a speaker.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventors: Jonathan Solnit, Kelly Veit, Edwin H. Satterthwaite, JR., Jeffrey Lee
  • Publication number: 20150378716
    Abstract: Methods, apparatus and systems are disclosed to update application deployments in cloud computing environments. An example method disclosed herein includes identifying an update profile to promote across the plurality of deployment environments, the update profile to update a component of the application, in response to a notification of promotion of the update profile received at a first deployment environment. The example method also includes displaying a user-selectable control in a user interface, the user-selectable control to specify whether to apply the update profile to the component of the application deployed in the first deployment environment, based on selection of the user-selectable control, performing a compatibility check of the first deployment environment and the update profile, and based on an outcome of the compatibility check, applying the update profile to the component of the application deployed in the first deployment environment.
    Type: Application
    Filed: August 7, 2014
    Publication date: December 31, 2015
    Inventors: SERVESH SINGH, Arun Narayanaswamy, Kiran Singh, Ashish Kumar Jain, Agila Govindaraju
  • Publication number: 20150378717
    Abstract: Embodiments are directed towards managing application delivery over a network. Change information that corresponds to changes to an application may be provided to a delivery pipeline. The change information may be verified in part based on a static analysis of the content of the change information, compiling, and unit testing. Reviewers may be notified to approve the change information. A version of the application that includes the change information may be generated. Acceptance testing may be performed that includes provisioning computing resources in an acceptance computing environment. And, deploying a version of application that includes the change information into the acceptance computing environment. If the acceptance testing passes, a shipping operation may be enabled pausing the delivery pipeline until an authorized user activates the shipping operation restarting the delivery pipeline and deploying the application to one or more computing environments.
    Type: Application
    Filed: April 27, 2015
    Publication date: December 31, 2015
    Inventors: Adam Brent Jacob, Seth Yosef Falcon, Lamont Curtis Granquist, Jon Morrow, Christopher Brown, Kevin Smith
  • Publication number: 20150378718
    Abstract: Systems, methods, and computer program products for a software build and load process using a compilation and deployment service. A method for a software build and load process using a compilation and deployment service includes receiving, at the service, new software. The method further includes comparing, at the service, the received new software with data in a database, wherein the data comprises active software. The method further includes merging, at the service said new software and active software into one or more load modules based on the comparison. The method further includes deploying the one or more load modules to one or more target processing units.
    Type: Application
    Filed: September 2, 2015
    Publication date: December 31, 2015
    Applicant: TELEFONAKTIEBOLAGET L M ERICSSON (PUBL)
    Inventors: Bengt JOHANSSON, Per ANDERSSON, Abdallah CHATILA, Anders FRANZEN, Tarik HAMMAM, Jon MALOY, Tord NILSSON, Sten Rune PETTERSSON, Richard TREMBLAY
  • Publication number: 20150378719
    Abstract: An information processing device includes a storage unit that stores a program to be updated and setting information indicating whether updating of the program is valid, a communicator that performs communication via a network, and a processor that executes a process including: when receives update management information indicating a first version of the program, determining whether the program is to be updated on the basis of the first version indicated; determining whether the setting information indicates that updating of the program is valid; when it is determined that the program is to be updated and the setting information indicates that the updating of the program is valid, making a request for data for the updating, and updating the program; and transmitting the update management information, and transmitting the data for the updating in reply to a request from a second information processing device.
    Type: Application
    Filed: September 14, 2015
    Publication date: December 31, 2015
    Inventor: Toshio Yasutake
  • Publication number: 20150378720
    Abstract: A medical software package stored on a non-transitory, computer-readable storage medium is disclosed. The medical software package can include a plurality of software components programmed to provide one or more functionalities to one or more medical monitoring devices, where each software component is programmed to run independently as a daemon, where each software component is programmed to be modified without recompiling unchanged software components, where the software components are programmed to communicate to each other through at least one of the software components, and where the software package is hardware agnostic and operating system agnostic. A medical device including a tangible, non-transitory storage device storing a medical software package comprising a plurality of modular software components programmed to provide medical device functionality is also disclosed.
    Type: Application
    Filed: November 7, 2014
    Publication date: December 31, 2015
    Inventors: Cory R. Gondek, Soundharya Nagasubramanian, Paul S. Kovitz, Charles Alfred, Dan E. Goldman, III
  • Publication number: 20150378721
    Abstract: The present disclosure provides a system and method for managing data using semantic tags. The method may include providing a data model corresponding to a first set of tangible objects where the data model includes a first template class having both properties describing the set of tangible object and a set of semantic tags corresponding to the properties. The method may include receiving a class definition for a second template class for a second set of tangible objects where the second template class inherits, by the class definition, the properties and the sematic tags for the second set of tangible objects.
    Type: Application
    Filed: September 2, 2015
    Publication date: December 31, 2015
    Inventors: John Schaefer, Rick Bullotta, Lawrence Fan, Brandon Hahr, Philip J. Huber, Samuel T. Malapas
  • Publication number: 20150378722
    Abstract: Methods and systems for developing and deploying software applications in a computing environment hosted by multi-user computing services platforms. Web-based user interfaces providing one or more options for accessing a software development project hosted by multi-user computing services platforms for presentation to users. Multi-user computing and network services platforms configured to receive, via the user interface, inputs to software development projects, which may include change requests or work items.
    Type: Application
    Filed: September 4, 2015
    Publication date: December 31, 2015
    Inventor: Maria Eugenia Zuniga-Hernandez
  • Publication number: 20150378723
    Abstract: In accordance with embodiments, there are provided mechanisms and methods for associating a plurality of stored elements with a creation of a patch. These mechanisms and methods for associating a plurality of stored elements with a creation of a patch can enable improved patch development for multi-tenant on-demand database systems, improved patch flexibility, etc.
    Type: Application
    Filed: January 6, 2015
    Publication date: December 31, 2015
    Applicant: salesforce.com, inc.
    Inventors: Andrew Smith, Timothy Kral, Simon Toens
  • Publication number: 20150378724
    Abstract: Techniques are described for identifying the ideal or preferred logging behavior to be followed in a software development project. A numerical weight is computed for each method in the source code that can be used to rank the logging behavior of that method. The numerical weight is computed in such a way that the methods whose log printing statements have been modified more frequently receive higher numerical weights. The assumption is that since most logging enhancements are done as after thoughts during code reviews or while fixing bugs, the ideal logging behavior will be exhibited by those methods whose logging behavior was modified the most frequently. Once the methods have been ranked according to the numerical weight, the highest ranking methods can be used to provide insight to developers about the ideal logging behavior for the project.
    Type: Application
    Filed: August 13, 2014
    Publication date: December 31, 2015
    Inventor: VIPIN BALACHANDRAN
  • Publication number: 20150378725
    Abstract: An incident associated with a software logistic tool occurs. At a host agent a notification for the incident is received. The host agent is associated with a corresponding host where the software logistic tool is running. The notification for the incident is pushed to a customer operation cockpit operating at a customer system landscape via a push channel for communication from the software logistic tool to the customer operation cockpit. The notification for the incident is received at the customer operation cockpit for a customer support user to analyze.
    Type: Application
    Filed: June 26, 2014
    Publication date: December 31, 2015
    Inventors: PETER EBERLEIN, Volker Driesen
  • Publication number: 20150378726
    Abstract: Embodiments of an apparatus are disclosed for performing arithmetic operations on provided operands. The apparatus may include a fetch unit, and an arithmetic logic unit (ALU). The fetch unit may be configured to retrieve two operands responsive to receiving an instruction, wherein the operands include binary-coded decimal values. The ALU may be configured to scale a value of each of the operands, and then compress the scaled values of the operands. The compressed values of the operands may include fewer data bits than the corresponding scaled values. The ALU may be further configured to estimate a portion of a result of the operation dependent upon the compressed values of the operands.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Christopher H. Olson, Jeffrey S. Brooks, Albert Danysh
  • Publication number: 20150378727
    Abstract: In an approach for decreasing an execution time of a computer code, one or more processors receive a computer code and identify a frequently executed region of the computer code. One or more processors identify a long-form conditional branch in the frequently executed region of the computer code that is infrequently taken. One or more processors generate a long-form unconditional branch with a target that is a target of the long-form conditional branch. One or more processors modify the long-form conditional branch to be a short-form conditional branch. One or more processors insert the long-form unconditional branch in the computer code within a branch distance of the short-form conditional branch. One or more processors modify a target of the short-form conditional branch to be a location of the long-form unconditional branch in the computer code.
    Type: Application
    Filed: June 25, 2014
    Publication date: December 31, 2015
    Inventors: Patrick R. Doyle, Vijay Sundaresan
  • Publication number: 20150378728
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Publication number: 20150378729
    Abstract: Execution of a transaction may be initiated by a CPU in a transactional execution (TX) environment. A set of TX performance characteristics of the transaction during the transactional execution may be collected and stored in a location specified by an instruction of the transaction when the transactional execution ends or aborts.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventors: Fadi Y. Busaba, Harold W. Cain, III, Dan F. Greiner, Michael Karl Gschwind, Valentina Salapura, Eric M. Schwarz, Chung-Lung K. Shum
  • Publication number: 20150378730
    Abstract: A system on a chip comprises a managing processor for controlling operations of the system on a chip. The managing processor comprises a core monitor control logic circuit operable to: receive at least one instruction; determine whether the instruction is an activation instruction; determine whether the managing processor is in or transitioning to an idle state; and transition the managing processor from a first mode of operation to a second mode of operation in response to the instruction being an activation instruction and the managing processor being in or transitioning to an idle state.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Applicant: FREESCALE SEMICONDUCTOR, INC.
    Inventors: NIR ATZMON, RON-MICHAEL BAR, ERAN GLICKMAN, STAS YOSUPOV
  • Publication number: 20150378731
    Abstract: Various different embodiments of the invention are described including: (1) a method and apparatus for intelligently allocating threads within a binary translation system; (2) data cache way prediction guided by binary translation code morphing software; (3) fast interpreter hardware support on the data-side; (4) out-of-order retirement; (5) decoupled load retirement in an atomic OOO processor; (6) handling transactional and atomic memory in an out-of-order binary translation based processor; and (7) speculative memory management in a binary translation based out of order processor.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventors: PATRICK P. LAI, ETHAN SCHUCHMAN, DAVID KEPPEL, DENIS M. KHARTIKOV, POLYCHRONIS XEKALAKIS, JOSHUA B. FRYMAN, ALLAN D. KNIES, NAVEEN NEELAKANTAM, GREGOR STELLPFLUG, JOHN H. KELM, MIREM HYUSEINOVA, DEMOS PAVLOU, JAROSLAW TOPP
  • Publication number: 20150378732
    Abstract: An instruction stream includes a transactional code region. The transactional code region includes a latent modification instruction (LMI), a next sequential instruction (NSI) following the LMI, and a set of target instructions following the NSI in program order. Each target instruction has an associated function, and the LMI at least partially specifies a substitute function for the associated function. A processor executes the LMI, the NSI, and at least one of the target instructions, employing the substitute function at least partially specified by the LMI. The LMI, the NSI, and the target instructions may be executed by the processor in sequential program order or out of order.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventors: Michael Karl Gschwind, Valentina Salapura, Chung-Lung K. Shum, Timothy J. Slegel
  • Publication number: 20150378733
    Abstract: A method for reducing execution of redundant threads in a processing environment. The method includes detecting threads that include redundant work among many different threads. Multiple threads from the detected threads are grouped into one or more thread clusters based on determining same thread computation results. Execution of all but a particular one thread in each of the one or more thread clusters is suppressed. The particular one thread in each of the one or more thread clusters is executed. Results determined from execution of the particular one thread in each of the one or more thread clusters are broadcasted to other threads in each of the one or more thread clusters.
    Type: Application
    Filed: February 26, 2015
    Publication date: December 31, 2015
    Inventors: Boris Beylin, John Brothers, Santosh Abraham, Lingjie Xu, Maxim Lukyanov, Alex Grosul
  • Publication number: 20150378734
    Abstract: Expandably wide operations are disclosed in which operands wider than the data path between a processor and memory are used in executing instructions. The expandably wide operands reduce the influence of the characteristics of the associated processor in the design of functional units performing calculations, including the width of the register file, the processor clock rate, the exception subsystem of the processor, and the sequence of operations in loading and use of the operand in a wide cache memory.
    Type: Application
    Filed: June 25, 2015
    Publication date: December 31, 2015
    Inventors: Craig Hansen, John Moussouris, Alexia Massalin
  • Publication number: 20150378735
    Abstract: An instruction stream includes a transactional code region. The transactional code region includes a latent modification instruction (LMI), a next sequential instruction (NSI) following the LMI, and a set of target instructions following the NSI in program order. Each target instruction has an associated function, and the LMI at least partially specifies a substitute function for the associated function. A processor executes the LMI, the NSI, and at least one of the target instructions, employing the substitute function at least partially specified by the LMI. The LMI, the NSI, and the target instructions may be executed by the processor in sequential program order or out of order.
    Type: Application
    Filed: August 19, 2015
    Publication date: December 31, 2015
    Inventors: Michael Karl Gschwind, Valentina Salapura, Chung-Lung K. Shum, Timothy J. Slegel
  • Publication number: 20150378736
    Abstract: Instructions and logic provide general purpose GF(28) SIMD cryptographic arithmetic functionality. Embodiments include a processor to decode an instruction for a SIMD affine transformation specifying a source data operand, a transformation matrix operand, and a translation vector. The transformation matrix is applied to each element of the source data operand, and the translation vector is applied to each of the transformed elements. A result of the instruction is stored in a SIMD destination register. Some embodiments also decode an instruction for a SIMD binary finite field multiplicative inverse to compute an inverse in a binary finite field modulo an irreducible polynomial for each element of the source data operand. Some embodiments also decode an instruction for a SIMD binary finite field multiplication specifying first and second source data operands to multiply each corresponding pair of elements of the first and second source data operand modulo an irreducible polynomial.
    Type: Application
    Filed: June 26, 2014
    Publication date: December 31, 2015
    Inventor: Shay Gueron
  • Publication number: 20150378737
    Abstract: Method and apparatus for sending packets using optimized PIO write sequences without sfences. Sequences of Programmed Input/Output (PIO) write instructions to write packet data to a PIO send memory are received at a processor supporting out of order execution. The PIO write instructions are received in an original order and executed out of order, with each PIO write instruction writing a store unit of data to a store buffer or a store block of data to the store buffer. Logic is provided for the store buffer to detect when store blocks are filled, resulting in the data in those store blocks being drained via PCIe posted writes that are written to send blocks in the PIO send memory at addresses defined by the PIO write instructions. Logic is employed for detecting the fill size of packets and when a packet's send blocks have been filled, enabling the packet data to be eligible for egress.
    Type: Application
    Filed: June 26, 2014
    Publication date: December 31, 2015
    Applicant: Intel Corporation
    Inventors: Mark Debbage, Yatin M. Mutha
  • Publication number: 20150378738
    Abstract: Improving the tracking of read sets and write sets associated with cache lines of a transaction in a pipelined processor executing memory instructions having the read sets and write sets associated with the cache lines is provided. Included is active read set and write set cache indicators associated with the memory operation of executing memory instructions and associated with a recovery pool based on memory instructions being not-speculative are updated when the memory instruction is not-newer in program order than an un-resolved branch instruction. Based on encountering a speculative branch instruction in the processor pipeline, a representation of the active read sets and write sets is copied to the recovery pool. Based on completing the speculative branch instruction, updating the active read sets and write sets from the representations copied to the recovery pool associated with the branch instruction upon a detection of a misprediction.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Michael Karl Gschwind, Valentina Salapura, Chung-Lung K. Shum
  • Publication number: 20150378739
    Abstract: Improving the tracking of read sets and write sets associated with cache lines of a transaction in a pipelined processor executing memory instructions having the read sets and write sets associated with the cache lines is provided. Included is active read set and write set cache indicators associated with the memory operation of executing memory instructions and associated with a recovery pool based on memory instructions being not-speculative are updated when the memory instruction is not-newer in program order than an un-resolved branch instruction. Based on encountering a speculative branch instruction in the processor pipeline, a representation of the active read sets and write sets is copied to the recovery pool. Based on completing the speculative branch instruction, updating the active read sets and write sets from the representations copied to the recovery pool associated with the branch instruction upon a detection of a misprediction.
    Type: Application
    Filed: September 1, 2015
    Publication date: December 31, 2015
    Inventors: Michael Karl Gschwind, Valentina Salapura, Chung-Lung K. Shum
  • Publication number: 20150378740
    Abstract: A method includes providing a data processor having an instruction pipeline, where the instruction pipeline has a plurality of instruction pipeline stages, and where the plurality of instruction pipeline stages includes a first instruction pipeline stage and a second instruction pipeline stage. The method further includes providing a data processor instruction that causes the data processor to perform a first set of computational operations during execution of the data processor instruction, performing the first set of computational operations in the first instruction pipeline stage if the data processor instruction is being executed and a first mode has been selected, and performing the first set of computational operations in the second instruction pipeline stage if the data processor instruction is being executed and a second mode has been selected.
    Type: Application
    Filed: September 11, 2015
    Publication date: December 31, 2015
    Applicant: Rambus Inc.
    Inventors: William C. MOYER, Jeffrey W. SCOTT
  • Publication number: 20150378741
    Abstract: A method for improving power, performance, area (PPA) for mixed precision computations in a processing environment. The method includes determining a braiding factor as a number of units of work encoded into a physical thread. A value of the braiding factor is determined based on a mix of precision requirements presented for individual units of work. Units of work are classified as instructions for applied code transformation based on associated precision requirements for the processing environment. Instruction inputs from specified registers are packed together into a destination register according to the determined value of the braiding factor. The packed instructions presented in vector form are executed with an instruction set architecture configured for executing packed instructions of different precisions.
    Type: Application
    Filed: March 30, 2015
    Publication date: December 31, 2015
    Inventors: Maxim Lukyanov, Alexander Grosul, Mitchell Alsup, Boris Beylin
  • Publication number: 20150378742
    Abstract: An extensible software application utilizes rules to initiate a behavior that performs operations that customize the extensible software application in a preferred manner. The behavior is applied when pre-defined events occur during execution of the extensible software application. The rules are provided by a third party developer in metadata that is separate from the extension's program code. The rules are based on expressions that define the events that need to take place during the execution of the extensible software application before the behavior is applied.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventor: PAUL HARRINGTON
  • Publication number: 20150378743
    Abstract: Systems and methods for enhancing the availability of multi-tier applications on cloud computing platforms are disclosed. An example method comprises identifying, using a processor, dependencies among application components in a multi-tier application; generating, using the processor, an application blueprint defining the multi-tier application based on the identified dependencies; generating a remediation policy based on the identified dependencies in the application blueprint, the remediation policy comprising instructions to restore availability of the multi-tier application; detecting unavailability of the multi-tier application; identifying, using the processor, one of the application components as being responsible for the unavailability of the multi-tier application; and restarting, using the processor, the identified one of the application components based on the remediation policy to restore availability of the multi-tier application.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventors: Gal Zellermayer, Moran Shimron, Avshi Avital, Hilik Paz
  • Publication number: 20150378744
    Abstract: In an approach to allowing a computer to boot from a user trusted device (UTD), the computer comprises a data storage device storing operating system (OS) services, and a version of an OS loader. The UTD is connectable to the computer and stores a boot loader, detectable by a firmware executing at the computer, and an OS loader, and wherein the UTD prevents an unauthenticated user to modify the boot loader and the OS loader stored thereon. The computer then, upon connection, lets the boot loader be detected by the firmware for execution of the boot loader at least partly at the computer, to cause to transfer the OS loader from the UTD to the computer, and executes the transferred OS loader at least partly from the computer, to execute at least one crypto driver for the OS, to start the OS services and complete booting of the computer.
    Type: Application
    Filed: May 29, 2015
    Publication date: December 31, 2015
    Inventor: Thomas Gschwind
  • Publication number: 20150378745
    Abstract: A data processing method during a boot procedure of a smart device is provided. The data processing method includes: when a data request is detected during the boot procedure of the smart device, looking up whether a page cache pre-storing a small data file required for booting includes requested data of the data request, the small data file being file having a data amount smaller than a predetermined threshold; when the page cache includes the requested data, determining whether the data request is a data reading request or a data writing request; when the data request is the data reading request, duplicating the requested from the page cache to a system memory according to the data request. A boot time can be reduced through the above method.
    Type: Application
    Filed: June 26, 2015
    Publication date: December 31, 2015
    Inventors: Hong-Bo He, Ming-Yong Sun