Patents by Inventor Surupa Biswas
Surupa Biswas 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: 20170083941Abstract: An advertising system stores records of web publishers accessed by each of a plurality of users of the online system, where the records indicate for each of the web publishers which of the users have accessed sites of the web publisher. A set of users targeted by an advertiser for receiving one or more advertisements from the advertiser is received. Using the stored records, one or more web publishers are selected to recommend to the advertiser for publishing the one or more advertisements targeted to the set of users. The web publishers are selected using a likelihood of the target users accessing content provided by the selected publishers based on the target users having previously accessed sites of the web publishers. The one or more selected web publishers are recommended to the advertiser for bidding to present ads to the target users.Type: ApplicationFiled: September 22, 2015Publication date: March 23, 2017Inventors: Surupa Biswas, Xin Liu, Aleksey Sergeyevich Fadeev
-
Patent number: 9584877Abstract: One or more identifiers that facilitate efficient native image validation can be generated and stored in an auxiliary file upon pre-compiling of an assembly. The native image can be validated against an assembly from which the native image is generated, among other files that influence the generated contents of the native image, based upon the auxiliary file and included identifiers. Additionally, native image validation can be performed in an increasing cost sequence associated with each identifier included within the auxiliary file.Type: GrantFiled: June 16, 2011Date of Patent: February 28, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Pracheeti Nagarkar, Michael Rayhelson, Atsushi Kanamori, Fadi Hanna, Surupa Biswas, Jan Kotas
-
Publication number: 20160267523Abstract: Universal tags are placed on various web pages of a website. Unlike prior art action tags that indicate that an action has occurred, the universal tag sends a broader range of data capturing a user's experience on the website (e.g., whether an item was placed in a shopping cart, etc.) to a server. The server obtains an identity of the user from its own cookie on the user's device and stores the information received with the universal tag in connection with the user's account. A graphical user interface is used to define the information to be sent upon activation of the universal tag.Type: ApplicationFiled: March 11, 2015Publication date: September 15, 2016Inventors: Surupa Biswas, Ter Chrng Ng, Akshay Ahooja, Ryan Edward Huettl
-
Publication number: 20160260129Abstract: Different online systems, such as an ad system or a social networking system, maintain different identifiers. An ad system identifies an association between an unsynced cookie maintained by an ad system and a user of the online system. The ad system identifies an overlap IP sequence including multiple occurrences of a user's user id and multiple occurrences of an unsynced cookie id in communications associated with an IP address over a given time period. The ad system determines an overlap score based on the identified overlap IP sequence. The overlap score determines how closely the unsynced cookie is associated with the user of the online system. The ad system determines whether the unsynced cookie id and the user id are associated with one another based on the overlap score. The ad system stores an association between the unsynced cookie and the user of the online system thereby generating a synced cookie.Type: ApplicationFiled: March 6, 2015Publication date: September 8, 2016Inventors: Aleksey Sergeyevich Fadeev, Stephane Taine, Liang Xu, Surupa Biswas, Ram Srinivasan
-
Publication number: 20160189235Abstract: An online advertising system stores advertisement placements and an advertisement campaign that is associated with the advertisement placements. The advertisement campaign includes a plurality of advertisement sets that each are associated with a respective set of selection rules. A request for an advertisement is received from a publishing system, the request specifying an advertisement placement and including advertisement selection information. The advertisement campaign is identified based in part on the advertisement placement, and an advertisement set is selected based in part on the selection information and a set of selection rules associated with the advertisement set. A creative group within the selected advertisement set is selected based on the selection rules, and an advertisement within the selected created group is selected using portions of the advertisement selection information and asset parameters associated with the advertisements in the selected creative group.Type: ApplicationFiled: December 29, 2014Publication date: June 30, 2016Inventors: Surupa Biswas, Komal Kashiramka, Xin Liu, Jianyong Xiao, Matthew Clark Turpin
-
Patent number: 8924922Abstract: A hosted pre-compilation system is described herein that provides a way to enable ahead-of-time compilation for managed code running inside a host. The host triggers ahead-of-time compilation at application runtime, after any configuration settings are available. The host can choose which modules to compile, when to compile them, and where to persist the generated images. Upon detecting a module load, the host can trigger pre-compilation, provide the loader an existing pre-compiled image of the module, or do nothing. The runtime/platform validates the integrity of any host-supplied pre-compiled image and provides application programming interfaces (APIs) to inform the host when an image becomes invalid and fails to load. The platform also provides APIs to let the host trigger compilation of binaries at any time relevant to the host, and to generate the images either synchronously or in a background process.Type: GrantFiled: June 14, 2010Date of Patent: December 30, 2014Assignee: Microsoft CorporationInventors: Surupa Biswas, David L. Detlefs, Bruce T. Forstall, Raja Krishnaswamy, Kevin Bradley Frei
-
Patent number: 8522218Abstract: Routines which are likely to be good candidates for cross-module inlining are automatically identified according to criteria based on service history, compiler inlining criteria, and/or execution performance criteria. Candidates can also be automatically identified by pattern matching codes of routines which satisfy service history, execution performance, and/or compiler criteria. Automatically identified candidate routines are presented in an inlining advisory tool, allowing developers to approve/veto automatically identified candidates, to add other routines, and to either suggest or require that the development tools perform cross-module inlining with particular routines. Changes to a candidate routine can trigger regeneration of native image(s) into which the routine has been compiled.Type: GrantFiled: March 12, 2010Date of Patent: August 27, 2013Assignee: Microsoft CorporationInventors: Surupa Biswas, David Jerome Hiniker, Jan Kotas, Frank V. Peschel-Gallee
-
Publication number: 20130159122Abstract: Delivering applications to devices. A method includes receiving, at an AppStore, developer provided application code. The method further includes determining anticipated usage of an application based on the application code at end user devices. The method further includes using the determined anticipated usage, optimizing the developer provided application code at the AppStore to optimize for the anticipated usage.Type: ApplicationFiled: December 15, 2011Publication date: June 20, 2013Applicant: MICROSOFT CORPORATIONInventors: Surupa Biswas, Patrick Dussud, Andrew J. Pardoe, Subramanian Ramaswamy
-
Publication number: 20120323858Abstract: One or more identifiers that facilitate efficient native image validation can be generated and stored in an auxiliary file upon pre-compiling of an assembly. The native image can be validated against an assembly from which the native image is generated, among other files that influence the generated contents of the native image, based upon the auxiliary file and included identifiers. Additionally, native image validation can be performed in an increasing cost sequence associated with each identifier included within the auxiliary file.Type: ApplicationFiled: June 16, 2011Publication date: December 20, 2012Applicant: MICROSOFT CORPORATIONInventors: Pracheeti Nagarkar, Michael Rayhelson, Atsushi Kanamori, Fadi Hanna, Surupa Biswas, Jan Kotas
-
Patent number: 8296742Abstract: Various technologies and techniques are disclosed for automatically generating native images for a virtual machine environment. A virtual machine environment is provided where application libraries are distributed in an intermediate language format and then compiled at a later point in time. An automatic native generation service is provided that monitors the application libraries and generates a native image for a particular one or more of the application libraries when the service determines that native generation is appropriate. Invalid native images are automatically detected and re-generated. If a load attempt for a particular native image is unsuccessful, then the native image is determined to be invalid. The particular native image is then re-generated automatically.Type: GrantFiled: October 10, 2006Date of Patent: October 23, 2012Assignee: Microsoft CorporationInventors: Surupa Biswas, Ori Gershony, Jan Kotas
-
Publication number: 20110307858Abstract: A hosted pre-compilation system is described herein that provides a way to enable ahead-of-time compilation for managed code running inside a host. The host triggers ahead-of-time compilation at application runtime, after any configuration settings are available. The host can choose which modules to compile, when to compile them, and where to persist the generated images. Upon detecting a module load, the host can trigger pre-compilation, provide the loader an existing pre-compiled image of the module, or do nothing. The runtime/platform validates the integrity of any host-supplied pre-compiled image and provides application programming interfaces (APIs) to inform the host when an image becomes invalid and fails to load. The platform also provides APIs to let the host trigger compilation of binaries at any time relevant to the host, and to generate the images either synchronously or in a background process.Type: ApplicationFiled: June 14, 2010Publication date: December 15, 2011Applicant: MICROSOFT CORPORATIONInventors: Surupa Biswas, David L. Detlefs, Bruce T. Forstall, Raja Krishnaswamy, Kevin Bradley Frei
-
Publication number: 20110225564Abstract: Routines which are likely to be good candidates for cross-module inlining are automatically identified according to criteria based on service history, compiler inlining criteria, and/or execution performance criteria. Candidates can also be automatically identified by pattern matching codes of routines which satisfy service history, execution performance, and/or compiler criteria. Automatically identified candidate routines are presented in an inlining advisory tool, allowing developers to approve/veto automatically identified candidates, to add other routines, and to either suggest or require that the development tools perform cross-module inlining with particular routines. Changes to a candidate routine can trigger regeneration of native image(s) into which the routine has been compiled.Type: ApplicationFiled: March 12, 2010Publication date: September 15, 2011Inventors: Surupa Biswas, David Jerome Hiniker, Jan Kotas, Frank V. Peschel-Gallee
-
Patent number: 7987457Abstract: Various technologies and techniques are disclosed that provides targeted patching for native generation images. Changed binaries are updated with information that indicates whether or not they contain safe changes. A servicing process can then be provided for a client machine. For any compatible binaries with changes that have been identified as safe, a native generation update is performed that includes recompilation of the compatible binaries with the safe changes, and an updating of binding information for any dependent binaries. For any non-compatible binaries with changes that have been identified as unsafe, a native generation update is performed that includes recompilation of any non-compatible binaries and any dependent binaries.Type: GrantFiled: June 25, 2007Date of Patent: July 26, 2011Assignee: Microsoft CorporationInventors: Surupa Biswas, Ori Gershony, Jan Kotas, Peter F. Sollich
-
Publication number: 20080320456Abstract: Various technologies and techniques are disclosed that provides targeted patching for native generation images. Changed binaries are updated with information that indicates whether or not they contain safe changes. A servicing process can then be provided for a client machine. For any compatible binaries with changes that have been identified as safe, a native generation update is performed that includes recompilation of the compatible binaries with the safe changes, and an updating of binding information for any dependent binaries. For any non-compatible binaries with changes that have been identified as unsafe, a native generation update is performed that includes recompilation of any non-compatible binaries and any dependent binaries.Type: ApplicationFiled: June 25, 2007Publication date: December 25, 2008Applicant: Microsoft CorporationInventors: Surupa Biswas, Ori Gershony, Jan Kotas, Peter F. Sollich
-
Publication number: 20080098368Abstract: Various technologies and techniques are disclosed for automatically generating native images for a virtual machine environment. A virtual machine environment is provided where application libraries are distributed in an intermediate language format and then compiled at a later point in time. An automatic native generation service is provided that monitors the application libraries and generates a native image for a particular one or more of the application libraries when the service determines that native generation is appropriate. Invalid native images are automatically detected and re-generated. If a load attempt for a particular native image is unsuccessful, then the native image is determined to be invalid. The particular native image is then regenerated automatically.Type: ApplicationFiled: October 10, 2006Publication date: April 24, 2008Applicant: Microsoft CorporationInventors: Surupa Biswas, Ori Gershony, Jan Kotas
-
Publication number: 20080034349Abstract: In one embodiment, a computer system performs a method for reconfiguring the data object layout within a software application binary. The method involves the computer system instantiating a software application binary. The computer system monitors the software application to identify a degree of use of each data object during instantiation of the software application. The computer system stores information that includes the degree of use of data objects monitored. The computer system terminates the software application. The computer system reconfigures the data object layout based on the stored information such that the data objects which satisfied a threshold degree of use are placed in a high-use portion of the application binary, and those data objects which failed to satisfy the threshold degree of use are placed in a low-use portion of the application binary such that order of data objects differs from the first instance of the software application.Type: ApplicationFiled: August 4, 2006Publication date: February 7, 2008Applicant: Microsoft CorporationInventors: Surupa Biswas, Ori Gershony, Jan Kotas
-
Publication number: 20080028378Abstract: In one embodiment, a computer system packages a first set of data objects into a first software build. The computer system evaluates at least a portion of the usage of the first software build in accordance with usage training scenarios. The computer system monitors the evaluation of the first software build in accordance with a first software build usage detection process to detect the use of data objects within the first software build. The computer system generates profile data for the data objects and the generated profile data includes an indication of usage for each data object. The computer system packages a second set of data objects into a second software build in accordance with the generated profile data from the first software build, wherein the second set of data objects is different from but includes one or more data objects from the first set of data objects.Type: ApplicationFiled: July 27, 2006Publication date: January 31, 2008Applicant: Microsoft CorporationInventors: Surupa Biswas, Ori Gershony, Jonathan P. de Halleux, Jiyang Liu, Brian F. Sullivan