Patents Examined by Amir Soltanzadeh
  • Patent number: 11231924
    Abstract: A system includes a processor and a memory accessible by the processor. The memory stores instructions that, when executed by the processor, cause the processor to receive an industrial automation project code file, wherein the industrial automation project code file defines one or more operations of an industrial automation system during performance of an industrial automation process, retrieve a set of industrial automation rules associated with a set of best practices for project code files, analyze the industrial automation project code file based on the set of industrial automation rules, including identifying one or more instances of inefficient tag usage, and identifying one or more sets of parallel overlapping tasks, and generate a report based the analysis of the industrial automation project code file based on the set of industrial automation rules.
    Type: Grant
    Filed: September 27, 2019
    Date of Patent: January 25, 2022
    Assignee: Rockwell Automation Technologies, Inc.
    Inventors: Andrew R. Stump, Anthony Carrara, Christopher W. Como, Sharon Billi-Duran, Matthew R. Ericsson, Srdjan Josipovic, Eashwer Srinivasan, Michael D. Kalan
  • Patent number: 11210084
    Abstract: A system and method for updating storage system includes a solid state disk (SSD) attached to a FPGA. The solid state disk is configured to receive a firmware image and a firmware upgrade module operating on the FPGA is configured to identify the presence of the firmware image on the SSD. The firmware upgrade module is further configured to store the firmware image in a buffer on the FPGA and write the firmware image.
    Type: Grant
    Filed: September 10, 2018
    Date of Patent: December 28, 2021
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Sompong Paul Olarig, Ramdas P. Kachare, Son Truong Pham, Fred Worley
  • Patent number: 11204749
    Abstract: A job state machine may transition to a downloading state in response to a start message on the job pipeline, wherein the job object causes job data to be downloaded to the device when the job state machine is in the downloading state. The job state machine may transition to an installing state in response to an assertion message on the job pipeline, wherein the job object causes downloaded job data to be installed on the device when the job state machine is in the installing state. The job state machine may transition to a finished state when the job data is installed on the device. The job state machine may be recoverable to the waiting state, the downloading state, or the installing state in response to a job object failure while the job state machine is in the waiting state, downloading state, or installing state, respectively.
    Type: Grant
    Filed: September 20, 2016
    Date of Patent: December 21, 2021
    Assignee: Apple Inc.
    Inventors: Dana J. DuBois, Matthew Sibson, Sam H. Gharabally, Gregory L. Murray
  • Patent number: 11188315
    Abstract: The disclosed systems, apparatuses and methods are directed to optimizing by a compiler register resource allocation for functions of a module, using a Register File comprising a limited number of registers. After performing interprocedural analysis in the module, the compiler computes the number of registers used by each function, and compiles the function to final machine code, except at callsites where a call is detected to be made to another function. At each callsite and for each called function, the compiler expands call instructions to final machine code after computing and setting a relative index to be used by a called function for running in an available part of the Register File. The relative index optimizes register resource allocation by minimizing the number of spilled registers before a function is called.
    Type: Grant
    Filed: September 4, 2020
    Date of Patent: November 30, 2021
    Assignee: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Yan Luo, Ahmed Mohammed ElShafiey Mohammed Eltantawy, Tyler Bryce Nowicki
  • Patent number: 11188369
    Abstract: Apparatuses, methods, program products, and systems are presented for interrupt virtualization. An apparatus includes an adapter module that detects a switch from a first physical input/output (“I/O”) adapter associated with a logical partition to a second physical I/O adapter associated with the logical partition. The apparatus includes an interrupt module that updates one or more I/O interrupt management structures for the logical partition so that the logical partition receives I/O interrupt information from the second physical I/O adapter and not the first physical I/O adapter without the logical partition being aware of the switch to the second I/O adapter. The apparatus includes an abstraction module that updates physical device information at a hypervisor for the logical partition to reflect the switch to the second physical I/O device.
    Type: Grant
    Filed: November 26, 2018
    Date of Patent: November 30, 2021
    Assignee: International Business Machines Corporation
    Inventors: Jesse Arroyo, Prathima Kommineni, Timothy Schimke, Vinod Bussa
  • Patent number: 11175905
    Abstract: Disclosed herein are system, method, and device embodiments for optimizing uploads for an offline scenario by merging requests. An embodiment operates by performing a plurality of modification operations over application storage, generating a first queue entry within a normal operations queue corresponding to a first modification operation of the plurality of modification operations, generating a second queue entry corresponding to a second modification operation of the plurality of modification operations, generating an optimized operations queue including an optimized queue entry combining the first queue entry and the second queue entry, and synchronizing the application storage with a remote storage system based on the optimized operations queue.
    Type: Grant
    Filed: September 27, 2019
    Date of Patent: November 16, 2021
    Assignee: SAP SE
    Inventors: Matt Borges, David Brandow, Michael Thode
  • Patent number: 11169829
    Abstract: A method, computer system, and computer program product for determining a candidate patch for computer software is provided. According to a method, fingerprint(s) of patch(es) for a computer software is obtained first, wherein a fingerprint of a patch comprises function(s) being revised in the computer software if the patch is installed into the computer software. Then whether every function in the obtained fingerprint(s) of patch(es) has been called is monitored in response to beginning of execution of the computer software along to code path(s) related to bug(s). And at last candidate patch(es) is determined in response to end of the execution of the computer software along to the code path(s) related to the bug(s), wherein every function in the fingerprint of the candidate patch(es) has been called during the execution of the computer software.
    Type: Grant
    Filed: June 27, 2019
    Date of Patent: November 9, 2021
    Assignee: International Business Machines Corporation
    Inventors: Zi Hui Duan, Lu Sun, Jing Jing Wei, Dian Guo Zou
  • Patent number: 11163675
    Abstract: Mutation testing can indicate whether mutants of a software application, created by intentionally altering source code of the software application, are successfully “killed” by test cases executed against the mutants. Mutation testing can be performed via parallel threads by, within each parallel thread, modifying individual source code class files and recompiling the modified class files to generate and test mutants. Individual mutation test results produced within each of the parallel threads can be aggregated to generate an aggregated test result report that indicates overall testing metrics associated with the mutation testing across the parallel threads.
    Type: Grant
    Filed: April 7, 2021
    Date of Patent: November 2, 2021
    Assignee: State Farm Mutual Automobile Insurance Company
    Inventors: Andrew L Pearson, Nate Shepherd
  • Patent number: 11157272
    Abstract: A deep learning model is trained on historical pull requests to automatically identify appropriate reviewers to review source code from one or more source code repositories. The model is trained on features that are based on past pull requests from the source code repositories and that represent the context of the syntactic representation of the changed code. The model learns patterns found in the changed source code and of the past peers associated with the changed source code to relate certain source code fragments with certain peers. The model generates probabilities based on the learned patterns which are used to identify appropriate reviewers more suitable to review the source code.
    Type: Grant
    Filed: April 23, 2019
    Date of Patent: October 26, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventor: Muiris Woulfe
  • Patent number: 11157248
    Abstract: A bidirectional conversion method is provided between a memory representation and a network representation of data samples associated with a DDS type in a system using an Object Management Group DDS and a Real-Time Publish Subscribe (RTPS) protocol that is more potent, maintainable, and with a smaller footprint. A first conversion recipe is generated using a type description and a language binding information that transforms any data sample associated with the type description from a first memory representation to a network representation, and this first conversion recipe is generated only once. A second conversion recipe is generated using a type description and language binding information that transforms any data sample associated with the type description from the network representation to a second memory representation, and this second conversion recipe is generated only once. Both generated first and second conversion recipes are then executed on all data samples.
    Type: Grant
    Filed: February 24, 2020
    Date of Patent: October 26, 2021
    Assignee: Real-Time Innovations, Inc.
    Inventors: Gerardo Pardo-Castellote, Erin Adams McManus, Fernando Crespo Sanchez
  • Patent number: 11150893
    Abstract: According to one or more embodiments of the present invention, a computer-implemented method includes uploading, by a first instance of an integrated development environment (IDE), a first source-code change to a change log of a version control system. A second instance of the IDE is used to upload a second source-code change to the change log of the version control system. A determination is made that the second source-code change conflicts with the first source-code change. Based on the determination that the second source-code change conflicts with the first source-code change, generating a notification of the second source-code change is generated in the first instance of the IDE.
    Type: Grant
    Filed: March 8, 2019
    Date of Patent: October 19, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Mariusz Sabath, Ali Kanso, Michael Joseph Spreitzer, Hai Huang
  • Patent number: 11151083
    Abstract: An application development and deployment system allows an application developer to develop applications for a distributed data intake and query system. The application may include information that associates portions of the application with particular server groups of the distributed data intake and query system. The application may be partitioned to generate target application packages for each of the server groups of the data intake and query system.
    Type: Grant
    Filed: November 27, 2019
    Date of Patent: October 19, 2021
    Assignee: Splunk Inc.
    Inventors: Grigori Melnik, David Searle Noble, Itay Alfred Neeman, Cecelia Campbell
  • Patent number: 11153165
    Abstract: A system for distributing firmware, comprising a group controller operating on a processor and configured to perform an algorithmic process of sending an update task with a download host to one of two or more group members. A group member operating on a processor and configured to perform an algorithmic process of receiving the update task with the download host and to request a payload file from the download host.
    Type: Grant
    Filed: November 6, 2019
    Date of Patent: October 19, 2021
    Assignee: Dell Products L.P.
    Inventors: Cyril Jose, Yee Ja, Marshal F. Savage, Chandrasekhar Puthillathe, Choudary Akkiah Maddukuri
  • Patent number: 11144309
    Abstract: In example embodiments, techniques are provided to implement changeset conflict rebasing when performing conflict-detection and merging in an infrastructure modeling software architecture that uses an optimistic concurrency policy. Changeset conflict rebasing involves adjusting the pre-change values in a local changeset so they match post-change values of a remote version, rather an original base version, or removing changes from the local changeset entirely.
    Type: Grant
    Filed: July 19, 2019
    Date of Patent: October 12, 2021
    Assignee: Bentley Systems, Incorporated
    Inventors: Samuel W. Wilson, Keith A. Bentley
  • Patent number: 11144301
    Abstract: Executable code is part of an over-the-air (OTA) update received by, for example, a computing device in a vehicle. In one example, the update is a secure over-the-air (SOTA) update of software that is stored in firmware of a vehicle component (e.g., firmware stored in memory of a storage device or a boot device that are mounted in a vehicle).
    Type: Grant
    Filed: September 6, 2019
    Date of Patent: October 12, 2021
    Assignee: Micron Technology, Inc.
    Inventors: Alberto Troia, Robert Richard Noel Bielby
  • Patent number: 11113185
    Abstract: Software code is written using a multistage automated code deployment pipeline. A code change is provided to the pipeline and at each stage various checks or evaluations of the code change is performed. Additionally, a risk profile is generated for the code change that identifies a risk of making the code change based on the code change itself as well as a reputation of the individual providing the code change. In one or more stages of the pipeline, a determination is made whether the risk profile meets a verification criteria, and if so the code change does not progress to the next stage in the pipeline until additional verification (in addition to any testing typically performed at that stage) is performed.
    Type: Grant
    Filed: November 11, 2019
    Date of Patent: September 7, 2021
    Assignee: Adobe Inc.
    Inventors: Harinder Singh Sandhu, Adrian John O'Lenskie
  • Patent number: 11093223
    Abstract: Techniques are described for increasing the functionality of a data processing system via a computer-executed tool that converts programs, written in a procedural language, into components that may be executed as a dataflow graph. The dataflow graph generated from a program written in a procedural programming language may support various forms of parallelism, such as pipeline parallelism and/or component parallelism. In some embodiments, parallelism may be achieved by parsing the program based on a grammar and identifying control flow relationships between data operations performed by the program. In particular, types of dataflow graph components may be identified, according to the grammar, as corresponding to particular data operations (or groups of data operations) of the program. A dataflow graph may be generated to comprise the identified components, which may be connected together with flows in an order according to the identified control flow relationships between data operations.
    Type: Grant
    Filed: July 18, 2019
    Date of Patent: August 17, 2021
    Assignee: Ab Initio Technology LLC
    Inventor: Yuri Gennady Rabinovitch
  • Patent number: 11093372
    Abstract: Systems, methods, and apparatus for automatically parallelizing code segments are provided. For example, an environment includes a profiling agent, a parallelization agent, and a verification agent. The profiling agent executes a code segment and generates a profile of the executed code segment. The parallelization agent analyzes the code segment to determine whether a parallelizable portion is present in the code segment. When a parallelizable portion is present, the parallelization agent determines, based on the profile of the executed code segment, whether to parallelize the parallelizable portion of the code segment. If it is determined to parallelize the parallelizable portion of the code segment, the parallelization agent automatically parallelizes the parallelizable portion of the code segment. The verification agent verifies the functionality and/or correctness of the parallelized code segment.
    Type: Grant
    Filed: August 19, 2019
    Date of Patent: August 17, 2021
    Assignee: Securboration, Inc.
    Inventors: Jacob A. Staples, Lee Krause, James B. Schneider, Adam K. Kavanaugh
  • Patent number: 11093374
    Abstract: A system and method for CI/CT/CD, which is continuous integration/continuous testing/continuous delivery, in which testing is fully integrated to the needs of rapid code development and delivery. The system is determining test coverage of a plurality of tests, comprising a code builder for providing code, a code tester for testing the code with said plurality of tests, and a code test analyzer for analyzing results of said plurality of tests to determine coverage of said code by said plurality of tests.
    Type: Grant
    Filed: June 20, 2017
    Date of Patent: August 17, 2021
    Assignee: SeaLights Technologies LTD
    Inventors: Alon Eizenman, Eran Sher
  • Patent number: 11093219
    Abstract: An orchestration engine provides a technical output across multiple programmable objects such as electronic devices, virtual objects and cloud based services in response to user specified logic. The orchestration engine may be deployed on a mobile computer, a tablet computer, a laptop computer, a desktop computer, a wired or wireless electronic device in the system or on a server computer connected via internet. The orchestration engine is capable of supporting extensibility in order to expand support for similar common interaction methods to newer electronic devices via a plug-in framework by specifying the communication protocol of the new element and its capabilities in a descriptive way via a markup language. The orchestration engine is provided along with a library of drag and drop Visual Programming Language steps required for providing executable computer program steps for specifying a user specified logic by computer language illiterate person.
    Type: Grant
    Filed: September 28, 2017
    Date of Patent: August 17, 2021
    Assignee: GUNAKAR PRIVATE LIMITED
    Inventors: Amol Subhash Palshikar, Girish Ramesh Mujumdar