Patent application number | Description | Published |
20090157491 | Monetization of Online Content - Methods, computer program products and systems are described for computer implemented online-content management. Multiple online content items authored by multiple authors for online publication are received at one or more first computers. For each online content item, a reputation score is determined for the author corresponding to the online content item. The reputation score is based at least in part on one or more reviews of the online content item provided by one or more reviewers other than the author. An online content item from the multiple online content items is published for display on one or more second computers, which includes displaying an advertisement in conjunction with displaying the online content item. A share of revenue for the author of the online content item for displaying the advertisement is determined based at least in part on the reputation score of the author. | 06-18-2009 |
20090157667 | Reputation of an Author of Online Content - Methods, computer program products and systems are described for online-content management. Multiple online content items authored by multiple authors are received at one or more first computers for online publication. For each online content item, a reputation score is determined for the author of the online content item. The reputation score is based at least in part on one or more reviews of the online content item provided by one or more reviewers other than the author. In response to a query for online content received from a second computer, a set of search results is generated that includes an online content item from the multiple online content items. A ranking of the online content item in the set is determined based at least in part on the reputation score of the author. | 06-18-2009 |
20090165128 | Authentication of a Contributor of Online Content - Methods, computer program products and systems are described for online-content management. Online content from multiple contributors is received at one or more first computers for public online display. An authentication score is determined for a contributor of the multiple contributors. The contributor's name and a representation of the contributor's authentication score is published online for display on one or more second computers in association with the online content received from the contributor. | 06-25-2009 |
20110106746 | AFFILIATE LINKING - Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for a social search engine. In one aspect, a method includes receiving an answer to a question from an answerer; identifying an entity in the answer, in which the entity refers to a product, a service, a company, or a merchant; obtaining permission from the answerer to provide an interactive link for the entity in the answer to a resource from which the entity can be obtained; receiving a user submitted query and determining that the query is related to the entity; and responsive to determining, providing the answer, including the link to the resource, as part of search results that are responsive to the query. | 05-05-2011 |
20110106895 | SOCIAL SEARCH ENGINE - Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for a social search engine. In one aspect, a method includes receiving a question from an asker in which the question is associated with one or more topics; selecting candidate answerers based at least partly on each answerer's respective relationship to the asker; sending the question successively to groups of one or more candidate answerers according to the ranking until an answer is received from a particular one of the candidate answerers; and sending to the asker the received answer and information that identifies the particular answerer. | 05-05-2011 |
20120265755 | Authentication of a Contributor of Online Content - Methods, computer program products and systems are described for online-content management. Online content from multiple contributors is received at one or more first computers for public online display. An authentication score is determined for a contributor of the multiple contributors. The contributor's name and a representation of the contributor's authentication score is published online for display on one or more second computers in association with the online content received from the contributor. | 10-18-2012 |
20130173725 | SOCIAL SEARCH ENGINE - Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for a social search engine. In one aspect, a method includes receiving a question from an asker in which the question is associated with one or more topics; selecting candidate answerers based at least partly on each answerer's respective relationship to the asker; sending the question successively to groups of one or more candidate answerers according to the ranking until an answer is received from a particular one of the candidate answerers; and sending to the asker the received answer and information that identifies the particular answerer. | 07-04-2013 |
20130311260 | Reward Structures - In accordance with some implementations, a method for rewarding users in a social referral system in accordance with some implementations is disclosed. The method is performed on a server system having one or more processors. The server system stores genealogy data for a plurality of users of the computer system. The server system then detects a user interaction with the computer system. The server system then determines whether the detected user interaction is associated with a reward. The server system then, in accordance with a determination that the detected user interaction is associated with a reward, determines, based on the stored genealogy data associated with the detected user interaction, a list of one or more users to receive at least a portion of the reward associated with the detected user interaction. The server system then allocates the associated reward to at least one of the one or more listed users. | 11-21-2013 |
20130311323 | Pre-Establishing Purchasing Intent for Computer Based Commerce Systems - In accordance with some implementations, a method for using recommendations to fulfill pre-established purchasing intent is disclosed. The method is performed on a server system having one or more processors and memory storing one or more programs for execution by the one or more processors. The server system receives a recommendation for a product or service from a first user and determines whether a second user has pre-indicated intent to purchase a product or service in a category of product or service that includes the recommended product or service. The server system then purchases the recommended product on behalf of the user without further input from the user. | 11-21-2013 |
20130311324 | Zero Click Commerce Systems - In accordance with some implementations, a method for enabling clickless purchasing is disclosed. The method is performed on a server system having one or more processors and memory storing one or more programs for execution by the one or more processors. The server system detects commercial intent from a user of the computer system. In response to detecting commercial intent, the server system determines a product relevant to the detected commercial intent of a user. The server system sends a recommendation message to the user, wherein the recommendation message includes an option to purchase the product. The server system then receives a response message from the user, the message including authorization from the user to purchase the recommended product. The server system then purchases the recommended product on behalf of the user and delivers the purchased product to the user. | 11-21-2013 |
20130311337 | Universal consumption service - In accordance with some implementations, a method for selecting a vendor in accordance with some implementations is disclosed. The method is performed on a server system having one or more processors and memory storing one or more programs for execution by the one or more processors. The server system detects stores one or more vendor profiles, wherein each vendor profile is associated with a particular vendor and includes one or more vendor category scores. The server system then receives a purchase request from a user of the server system, wherein the purchase request includes a product or service to be purchased. The server system then determines a vendor to supply the requested product based on the stored vendor profiles. The server system purchases the requested product from the determined vendor. The server system then arranges for delivery of the purchased product or service. | 11-21-2013 |
20130311573 | Progressively asking for increasing amounts of user and network data - In accordance with some implementations, a method for requesting user data is disclosed. The method is performed on a server system having one or more processors and memory storing one or more programs for execution by the one or more processors. The server system establishes a user profile for a user. The user profile includes one or more information items associated with the user. The server system receives a request from the user to access additional services. In response to receiving the user request, the server system requests additional information from the user. | 11-21-2013 |
20130311592 | Conversational Interfaces - In accordance with some implementations, a method for responding to requests submitted through a conversational interface is disclosed. The method is performed on a server system having one or more processors and memory storing one or more programs for execution by the one or more processors. The server system receives a request from a user through a conversational interface. The server system determines, based on the request, whether the system is able to fulfill the request automatically. In accordance with a determination that the system is able to fulfill the request automatically, the server system fulfills the user request with no human interaction. In accordance with a determination that the system is not able to fulfill the request without human intervention, the server system sends the request to a human operator for fulfillment. | 11-21-2013 |
20130311621 | Universal Communications Infrastructure - In accordance with some implementations, a method for enabling communication with a user is disclosed. The method is performed on a server system having one or more processors and memory storing one or more programs for execution by the one or more processors. The server system sends communication data to a user using a first communication channel. The server system determines that the user has ceased using the first communication channel for receiving communications. The server system identifies a second communication channel. The server system sends further communication data to the user using the identified second communication channel. | 11-21-2013 |
20130317941 | Trust Graph - In accordance with some implementations, a method for storing levels of trust between users for use in online e-commerce is disclosed. The method is performed on a server system having one or more processors and memory storing one or more programs for execution by the one or more processors. The server system stores trust information for a plurality of users, wherein each user has an associated level of trust with one or more other users in the plurality of users. The server system receives, from a first user, a trust indication for a second user in the plurality of users. The server system then updates the trust information of the first user based on the trust indication. | 11-28-2013 |
20140032335 | ADJUSTING AD COSTS USING DOCUMENT PERFORMANCE OR DOCUMENT COLLECTION PERFORMANCE - Documents or document sets may be scored to reflect a value of an action, such as a selection for example, when an ad is served with the document (or a document belonging to a document set). A cost associated with the action with respect to an ad that was served with a document may then be adjusted using the score. For example, ad scores may be accepted or determined, and a document may be scored using the ad scores when served with the document and ad scores across a collection of documents to generate a document score. Each of the ad scores may indicate a value of an action with respect to an ad, such as a conversion rate, or a return on investment for an ad selection for example. Document scores used in this way may help advertisers get a more consistent cost per conversion, or return on investment, without requiring them to enter and manage various offers for various documents and/or various ad serving systems having various conversion rates or returns on investment. | 01-30-2014 |
20150206113 | Methods and Systems for Purchasing Products via a Subscription Mechanism - In some embodiments of methods and systems of purchasing products via a subscription mechanism, a method comprises, presenting a subscription mechanism corresponding to a first user, wherein the subscription mechanism is associated with a set of products. In many embodiments, the method further comprises receiving a notification from a second user selecting the subscription mechanism corresponding to the first user, determining that one or more conditions are satisfied, and causing at least a portion of the set of products associated with the subscription mechanism to be purchased by the second user. Other embodiments also are disclosed herein. | 07-23-2015 |
20150206211 | Systems and Methods for Trusted Gifting - In some embodiments, a method of trusted gifting comprises, identifying a first user, identifying a second user associated with an event, and determining one or more potential products for the second user according to one or more criteria. In many embodiments, the method further comprises causing at least one product of the one or more determined potential products to be purchased for the second user by the first user. Other embodiments also are disclosed herein. | 07-23-2015 |
20150206225 | System and Method for Providing a Gift Exchange - In some embodiments, a method comprises receiving at least two parameters for a gift exchange from an organizer of the gift exchange. The at least two parameters can comprise a set of participants and a budget. The method further comprises identifying a gift exchange recipient for a respective participant in the set of participants, determining one or more gifts for the gift exchange recipient based at least in part on the budget and a first trust graph, and arranging for display the one or more determined gifts to the respective participant. In many embodiments, the first trust comprises levels of trust associated with the gift exchange recipient. Other embodiments also are disclosed herein. | 07-23-2015 |
20150242931 | INITIATION OF PURCHASE TRANSACTION IN RESPONSE TO A REPLY TO A RECOMMENDATION - In one embodiments, initiation of purchase transaction in response to a reply to a recommendation comprises a method. The method comprises, at a computer system having one or more processors and non-transitory memory storing one or more programs for execution by the one or more processors, detecting a recommendation associated with a first user, the recommendation associated with a product or service. The method further comprises detecting a response from a second user to the recommendation, determining whether the response from the second user comprises a purchase decision, and in accordance with a determination that the response from the second user comprises the purchase decision, initiating a transaction for the second user to purchase the product or service associated with the recommendation. Other embodiments are described herein. | 08-27-2015 |
20150278916 | Systems and Methods for Recommendation Scraping - Various embodiments of systems and methods for recommendation scraping include a method comprising receiving a content feed, wherein the content feed is associated with a holder and identifying at least one post within the content feed comprising a mention of a respective item. In many embodiments, the method can further comprise generating an item recommendation corresponding to the respective item, associating the item recommendation with a profile associated with the holder, and sending instructions to present the item recommendation to one or more users. Other embodiments are also disclosed herein. | 10-01-2015 |
20150278917 | SYSTEMS AND METHODS FOR OBTAINING PRODUCT RECOMMENDATIONS - Various embodiments of systems and methods for obtaining product recommendations include a method comprising receiving from a requestor a recommendation request and determining a first level category associated with the recommendation request. In many embodiments, the method further comprises sending instructions to display the recommendation request to one or more first users within a trust network of the requester, wherein the first users are identified as trusted by the requester with respect to the first level category, and if one or more first conditions are satisfied, send instructions to display the recommendation request to one or more second users, wherein each second user is within a respective trust network of a respective first user and is identified as trusted by the respective first user with respect to the first level category. Other embodiments also are disclosed herein. | 10-01-2015 |
20150278918 | Systems and Methods for Providing a Collections Search - Various embodiments of methods and systems for providing a collections search include a method comprising determining one or more recommendations from a set of users within a trust network of a first user, wherein each user from the set of users is associated with one of the plurality of first recommendations and determining a category for each of the one or more recommendations. In many embodiments, the method further comprises arranging one or more collections of the one or more recommendations according to the category for each of the one or more recommendations and arranging for display the one or more collections. Other embodiments are disclosed herein. | 10-01-2015 |
20150278919 | Systems and Methods for a Catalog of Trending and Trusted Items - Various embodiments of methods and systems for providing a catalog of trending and trusted items include a method comprising determining a plurality of first recommendations from a set of users within a trust network of a first user, wherein each user from the set of users is associated with one of the plurality of first recommendations, determining respective time differences between respective chronologically successive first recommendations of the plurality of first recommendations, and determining one or more second recommendations that satisfy one or more popularity criteria. In many embodiments, the method further comprises arranging for display the first recommendations in a chronologically based order, and one or more of the second recommendations, wherein a respective second recommendation is inserted between respective chronologically successive first recommendations whose time difference is greater than a threshold. Other embodiments are disclosed herein. | 10-01-2015 |
Patent application number | Description | Published |
20110072244 | Credit-Based Streaming Multiprocessor Warp Scheduling - One embodiment of the present invention sets forth a technique for ensuring cache access instructions are scheduled for execution in a multi-threaded system to improve cache locality and system performance. A credit-based technique may be used to control instruction by instruction scheduling for each warp in a group so that the group of warps is processed uniformly. A credit is computed for each warp and the credit contributes to a weight for each warp. The weight is used to select instructions for the warps that are issued for execution. | 03-24-2011 |
20120110586 | THREAD GROUP SCHEDULER FOR COMPUTING ON A PARALLEL THREAD PROCESSOR - A parallel thread processor executes thread groups belonging to multiple cooperative thread arrays (CTAs). At each cycle of the parallel thread processor, an instruction scheduler selects a thread group to be issued for execution during a subsequent cycle. The instruction scheduler selects a thread group to issue for execution by (i) identifying a pool of available thread groups, (ii) identifying a CTA that has the greatest seniority value, and (iii) selecting the thread group that has the greatest credit value from within the CTA with the greatest seniority value. | 05-03-2012 |
20130117541 | SPECULATIVE EXECUTION AND ROLLBACK - One embodiment of the present invention sets forth a technique for speculatively issuing instructions to allow a processing pipeline to continue to process some instructions during rollback of other instructions. A scheduler circuit issues instructions for execution assuming that, several cycles later, when the instructions reach multithreaded execution units, that dependencies between the instructions will be resolved, resources will be available, operand data will be available, and other conditions will not prevent execution of the instructions. When a rollback condition exists at the point of execution for an instruction for a particular thread group, the instruction is not dispatched to the multithreaded execution units. However, other instructions issued by the scheduler circuit for execution by different thread groups, and for which a rollback condition does not exist, are executed by the multithreaded execution units. The instruction incurring the rollback condition is reissued after the rollback condition no longer exists. | 05-09-2013 |
20130166881 | METHODS AND APPARATUS FOR SCHEDULING INSTRUCTIONS USING PRE-DECODE DATA - Systems and methods for scheduling instructions using pre-decode data corresponding to each instruction. In one embodiment, a multi-core processor includes a scheduling unit in each core for selecting instructions from two or more threads each scheduling cycle for execution on that particular core. As threads are scheduled for execution on the core, instructions from the threads are fetched into a buffer without being decoded. The pre-decode data is determined by a compiler and is extracted by the scheduling unit during runtime and used to control selection of threads for execution. The pre-decode data may specify a number of scheduling cycles to wait before scheduling the instruction. The pre-decode data may also specify a scheduling priority for the instruction. Once the scheduling unit selects an instruction to issue for execution, a decode unit fully decodes the instruction. | 06-27-2013 |
20130166882 | METHODS AND APPARATUS FOR SCHEDULING INSTRUCTIONS WITHOUT INSTRUCTION DECODE - Systems and methods for scheduling instructions without instruction decode. In one embodiment, a multi-core processor includes a scheduling unit in each core for scheduling instructions from two or more threads scheduled for execution on that particular core. As threads are scheduled for execution on the core, instructions from the threads are fetched into a buffer without being decoded. The scheduling unit includes a macro-scheduler unit for performing a priority sort of the two or more threads and a micro-scheduler arbiter for determining the highest order thread that is ready to execute. The macro-scheduler unit and the micro-scheduler arbiter use pre-decode data to implement the scheduling algorithm. The pre-decode data may be generated by decoding only a small portion of the instruction or received along with the instruction. Once the micro-scheduler arbiter has selected an instruction to dispatch to the execution unit, a decode unit fully decodes the instruction. | 06-27-2013 |
20130179662 | Method and System for Resolving Thread Divergences - An address divergence unit detects divergence between threads in a thread group and then separates those threads into a subset of non-divergent threads and a subset of divergent threads. In one embodiment, the address divergence unit causes instructions associated with the subset of non-divergent threads to be issued for execution on a parallel processing unit, while causing the instructions associated with the subset of divergent threads to be re-fetched and re-issued for execution. | 07-11-2013 |
20140164743 | REORDERING BUFFER FOR MEMORY ACCESS LOCALITY - Systems and methods for scheduling instructions for execution on a multi-core processor reorder the execution of different threads to ensure that instructions specified as having localized memory access behavior are executed over one or more sequential clock cycles to benefit from memory access locality. At compile time, code sequences including memory access instructions that may be localized are delineated into separate batches. A scheduling unit ensures that multiple parallel threads are processed over one or more sequential scheduling cycles to execute the batched instructions. The scheduling unit waits to schedule execution of instructions that are not included in the particular batch until execution of the batched instructions is done so that memory access locality is maintained for the particular batch. In between the separate batches, instructions that are not included in a batch are scheduled so that threads executing non-batched instructions are also processed and not starved. | 06-12-2014 |
20140189698 | APPROACH FOR A CONFIGURABLE PHASE-BASED PRIORITY SCHEDULER - A streaming multiprocessor (SM) in a parallel processing subsystem schedules priority among a plurality of threads. The SM retrieves a priority descriptor associated with a thread group, and determines whether the thread group and a second thread group are both operating in the same phase. If so, then the method determines whether the priority descriptor of the thread group indicates a higher priority than the priority descriptor of the second thread group. If so, the SM skews the thread group relative to the second thread group such that the thread groups operate in different phases, otherwise the SM increases the priority of the thread group. f the thread groups are not operating in the same phase, then the SM increases the priority of the thread group. One advantage of the disclosed techniques is that thread groups execute with increased efficiency, resulting in improved processor performance. | 07-03-2014 |
20150113538 | HIERARCHICAL STAGING AREAS FOR SCHEDULING THREADS FOR EXECUTION - One embodiment of the present invention is a computer-implemented method for scheduling a thread group for execution on a processing engine that includes identifying a first thread group included in a first set of thread groups that can be issued for execution on the processing engine, where the first thread group includes one or more threads. The method also includes transferring the first thread group from the first set of thread groups to a second set of thread groups, allocating hardware resources to the first thread group, and selecting the first thread group from the second set of thread groups for execution on the processing engine. One advantage of the disclosed technique is that a scheduler only allocates limited hardware resources to thread groups that are, in fact, ready to be issued for execution, thereby conserving those resources in a manner that is generally more efficient than conventional techniques. | 04-23-2015 |