Patents by Inventor Junfeng Yang

Junfeng Yang 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).

  • Publication number: 20150058826
    Abstract: The disclosed subject matter provides techniques for detecting and diagnosing mobile app bugs. An approximate execution mode screens for potential bugs, which can expose bugs but can generate false positives. From the generated bug reports, certain bugs can be automatically validated and false positives pruned, reducing the need for manual inspection.
    Type: Application
    Filed: August 25, 2014
    Publication date: February 26, 2015
    Applicant: The Trustees of Columbia University in the City of New York
    Inventors: GANG HU, Yang Tang, Xinhao Yuan, Junfeng Yang
  • Publication number: 20130152057
    Abstract: A data partitioning plan is automatically generated that—given a data-parallel program and a large input dataset, and without having to first run the program on the input dataset—substantially optimizes performance of the distributed execution system that explicitly measures and infers various properties of both data and computation to perform cost estimation and optimization. Estimation may comprise inferring the cost of a candidate data partitioning plan, and optimization may comprise generating an optimal partitioning plan based on the estimated costs of computation and input/output.
    Type: Application
    Filed: December 13, 2011
    Publication date: June 13, 2013
    Applicant: Microsoft Corporation
    Inventors: Qifa Ke, Vijayan Prabhakaran, Yinglian Xie, Yuan Yu, Jingyue Wu, Junfeng Yang
  • Publication number: 20120102470
    Abstract: Methods, systems, and media for providing determinism in multithreaded programs are provided. In some embodiments, methods for providing determinism in multithreaded programs are provided, the methods comprising: instrumenting a program with: a proxy that: receives inputs to the program; and determines whether a schedule corresponding to a set of input constraints satisfied by the inputs has been memoized; and a replayer that: if it is determined that a schedule corresponding to a set of input constraints satisfied by the inputs has been memoized, processes the inputs by the program according to the schedule.
    Type: Application
    Filed: July 25, 2011
    Publication date: April 26, 2012
    Inventors: Junfeng Yang, Heming Cui, Jingyue Wu
  • Publication number: 20120096449
    Abstract: Methods, systems, and media for protecting applications from races are provided. In some embodiments, methods for protecting applications from races are provided, the methods comprising: adding to at least one cycle of the application an update check to determine when an update to the application is to be made; adding an update engine to the application, wherein the update engine is configured to: receive an update plan that is based on an execution filter that specifies how operations of the application are to be synchronized; and cause synchronization operations to be added to the application based on the update plan that prevent the race from occurring.
    Type: Application
    Filed: July 22, 2011
    Publication date: April 19, 2012
    Inventors: Junfeng Yang, Heming Cui, Jingyue Wu
  • Patent number: 8069374
    Abstract: A technique for automatically detecting and correcting configuration errors in a computing system. In a learning process, recurring event sequences, including e.g., registry access events, are identified from event logs, and corresponding rules are developed. In a detecting phase, the rules are applied to detected event sequences to identify violations and to recover from failures. Event sequences across multiple hosts can be analyzed. The recurring event sequences are identified efficiently by flattening a hierarchical sequence of the events such as is obtained from the Sequitur algorithm. A trie is generated from the recurring event sequences and edges of nodes of the trie are marked as rule edges or non-rule edges. A rule is formed from a set of nodes connected by rule edges. The rules can be updated as additional event sequences are analyzed. False positive suppression policies include a violation-consistency policy and an expected event disappearance policy.
    Type: Grant
    Filed: February 27, 2009
    Date of Patent: November 29, 2011
    Assignee: Microsoft Corporation
    Inventors: Rina Panigrahy, Chad Verbowski, Yinglian Xie, Junfeng Yang, Ding Yuan
  • Patent number: 7984332
    Abstract: A distributed system checker may check a distributed system against events to detect bugs in the distributed system. The events may include machines crashes, network partitions, and packet losses, for example. The distributed system checker may check a distributed system that can have multiple threads and multiple processes running on multiple nodes. To obtain control over a distributed system, a distributed system checker may insert an interposition layer between a process and the operating system on each node.
    Type: Grant
    Filed: November 17, 2008
    Date of Patent: July 19, 2011
    Assignee: Microsoft Corporation
    Inventors: Junfeng Yang, Lintao Zhang, Lidong Zhou, Zhenyu Guo, Xuezheng Liu, Jian Tang, Mao Yang
  • Publication number: 20100223499
    Abstract: A technique for automatically detecting and correcting configuration errors in a computing system. In a learning process, recurring event sequences, including e.g., registry access events, are identified from event logs, and corresponding rules are developed. In a detecting phase, the rules are applied to detected event sequences to identify violations and to recover from failures. Event sequences across multiple hosts can be analyzed. The recurring event sequences are identified efficiently by flattening a hierarchical sequence of the events such as is obtained from the Sequitur algorithm. A trie is generated from the recurring event sequences and edges of nodes of the trie are marked as rule edges or non-rule edges. A rule is formed from a set of nodes connected by rule edges. The rules can be updated as additional event sequences are analyzed. False positive suppression policies include a violation- consistency policy and an expected event disappearance policy.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Applicant: Microsoft Corporation
    Inventors: Rina Panigrahy, Chad Verbowski, Yinglian Xie, Junfeng Yang, Ding Yuan
  • Publication number: 20100125758
    Abstract: A distributed system checker may check a distributed system against events to detect bugs in the distributed system. The events may include machines crashes, network partitions, and packet losses, for example. The distributed system checker may check a distributed system that can have multiple threads and multiple processes running on multiple nodes. To obtain control over a distributed system, a distributed system checker may insert an interposition layer between a process and the operating system on each node.
    Type: Application
    Filed: November 17, 2008
    Publication date: May 20, 2010
    Applicant: Microsoft Corporation
    Inventors: Junfeng Yang, Lintao Zhang, Lidong Zhou, Zhenyu Guo, Xuezheng Liu, Jian Tang, Mao Yang
  • Publication number: 20080065704
    Abstract: A distributed data store employs replica placement techniques in which a number k hash functions are used to compute k potential locations for a data item. A number r of the k locations are chosen for storing replicas. These replica placement techniques provide a system designer with the freedom to choose r from k, are structured in that they are determined by a straightforward functional form, and are diffuse such that the replicas of the items on one server are scattered over many other servers. The resulting storage system exhibits excellent storage balance and request load balance in the presence of incremental system expansions, server failures, and load changes. Data items may be created, read, and updated or otherwise modified.
    Type: Application
    Filed: September 12, 2006
    Publication date: March 13, 2008
    Applicant: Microsoft Corporation
    Inventors: John Philip MacCormick, Nicholas Murphy, Venugopalan Ramasubramanian, Ehud Wieder, Lidong Zhou, Junfeng Yang