DE102013213113A1 - Method for simultaneously determining settings for multiple parameter variations associated with device, involves ensuring consistency of settings across multiple segments - Google Patents
Method for simultaneously determining settings for multiple parameter variations associated with device, involves ensuring consistency of settings across multiple segments Download PDFInfo
- Publication number
- DE102013213113A1 DE102013213113A1 DE201310213113 DE102013213113A DE102013213113A1 DE 102013213113 A1 DE102013213113 A1 DE 102013213113A1 DE 201310213113 DE201310213113 DE 201310213113 DE 102013213113 A DE102013213113 A DE 102013213113A DE 102013213113 A1 DE102013213113 A1 DE 102013213113A1
- Authority
- DE
- Germany
- Prior art keywords
- settings
- parameter variations
- parameter
- variations
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Image Processing (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
Description
BEANSPRUCHUNG VON PRIORITÄTCLAIM OF PRIORITY
Diese Anmeldung ist eine teilweise Fortführung (Continuation-in-Part) von US-Anmeldungs-Nr. 13/543,196, eingereicht am 6. Juli 2012. Diese Anmeldung beansprucht auch die Priorität der US-Provisional-Anmeldungs-Nr. No. 61/819,478, eingereicht am 3. Mai 2013. Die vollständigen Inhalte dieser Anmeldungen sind hiermit durch Bezugnahme inkorporiert.This application is a continuation-in-part of US application no. No. 13 / 543,196, filed July 6, 2012. This application also claims the benefit of US Provisional Application Nos. No. No. 61 / 819,478, filed May 3, 2013. The entire contents of these applications are hereby incorporated by reference.
Die vorliegende Erfindung betrifft Parameter-Analyse und insbesondere Bestimmen eines Satzes von Voreinstellungen basierend auf Parameter-Analyse.The present invention relates to parameter analysis, and more particularly to determining a set of preferences based on parameter analysis.
HINTERGRUNDBACKGROUND
Viele der heute existierenden Produkte umfassen einen oder mehrere Parameter, welche eine Gesamt-Erfahrung, welche mit dem Produkt assoziiert ist, beeinflussen. Zum Beispiel können Computer-Spiele und andere Software viele Parameter haben, welche eine Qualität eines Renderns, Audio, Spiel, etc. bestimmen. Vorhandene Techniken zum Anordnen der Parameter, welche mit diesen Produkten assoziiert sind, sind jedoch mit verschiedenen Begrenzungen assoziiert worden.Many of the products existing today include one or more parameters that influence an overall experience associated with the product. For example, computer games and other software may have many parameters that determine a quality of rendering, audio, game, etc. Existing techniques for ordering the parameters associated with these products, however, have been associated with various limitations.
Zum Beispiel können momentan Kunden dafür verantwortlich sein, eine Mehrzahl von Parameter, welche mit einem Produkt assoziiert sind, manuell einzustellen, um geeignete Einstellungen für dieses Produkt zu bestimmen. Dies kann zu schlechteren als optimalen Einstellungen für das Produkt, zu einem zeitaufwendigen Versuch und Irrtum von dem Kunden, etc. führen. Somit gibt es einen Bedarf zum Adressieren dieser und/oder anderer Probleme, welche mit dem Stand der Technik assoziiert sind.For example, at present, customers may be responsible for manually setting a plurality of parameters associated with a product to determine appropriate settings for that product. This can lead to worse than optimal settings for the product, a time-consuming trial and error by the customer, etc. Thus, there is a need to address these and / or other problems associated with the prior art.
ZUSAMMENFASSUNGSUMMARY
Ein System, ein Verfahren und ein Computer-Programm-Produkt sind zum simultanen Bestimmen von Einstellungen für eine Mehrzahl von Parameter-Variationen bereitgestellt. In Benutzung wird eine Mehrzahl von Parameter-Variationen, welche mit einem Gerät assoziiert ist, identifiziert, wobei die Mehrzahl von Parameter-Variationen in eine Mehrzahl von Segmenten organisiert ist. Zusätzlich werden Einstellungen für jede der Mehrzahl von Parameter-Variationen bestimmt und Konsistenz der Einstellungen über die Mehrzahl von Segmenten wird sichergestellt.A system, method, and computer program product are provided for simultaneously determining settings for a plurality of parameter variations. In use, a plurality of parameter variations associated with a device are identified, wherein the plurality of parameter variations are organized into a plurality of segments. In addition, settings are determined for each of the plurality of parameter variations, and consistency of the settings across the plurality of segments is ensured.
KURZE BESCHREIBUNG DER ZEICHNUNGENBRIEF DESCRIPTION OF THE DRAWINGS
DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION
Zusätzlich kann in einer Ausführungsform die Mehrzahl von Parametern irgendeine Charakteristik des Gerätes umfassen. Zum Beispiel können die Parameter Hardware (z. B. eine Zentral-Verarbeitungs-Einheit (CPU), eine Grafik-Verarbeitungs-Einheit (GPU), Speicher mit willkürlichem Zugriff (RAM), eine Haupt-Platine, eine Anzeige, etc.) umfassen, welche innerhalb des Gerätes (z. B. ein Schreibtisch-Computer, ein Laptop-Computer, ein Tablet-Computer, eine persönlicher digitaler Assistent, ein Mobiltelefon, etc.) installiert ist, Software (z. B. ein Betriebssystem, Treiber, etc.), welche innerhalb des Gerätes installiert ist, umfassen.Additionally, in one embodiment, the plurality of parameters may include any characteristic of the device. For example, the parameters may include hardware (eg, a central processing unit (CPU), a graphics processing unit (GPU), random access memory (RAM), a main board, a display, etc.) contained inside the device (eg a desktop computer, a laptop computer, a tablet Computer, a personal digital assistant, a mobile phone, etc.), software (eg, an operating system, drivers, etc.) installed inside the device.
Ferner kann in einer Ausführungsform einer oder mehrere der Parameter unabhängig konfigurierbar sein. Zum Beispiel kann jeder der Parameter in der Lage sein, unabhängig von den anderen Parametern geändert zu werden. In einer Ausführungsform kann jeder der Parameter von dem Gerät benutzt werden, um eine oder mehrere Aktionen durchzuführen. In noch einer anderen Ausführungsform können die Parameter-Variationen eine Mehrzahl von verschiedenen Typen des Parameters umfassen, welcher eine Größe, Menge (magnitude), Geschwindigkeit, etc. umfasst, assoziiert mit dem Parameter. Wenn z. B. der Parameter eine Gerät-CPU ist, dann können die Variationen des Parameters einen Hersteller der CPU, eine Geschwindigkeit der CPU, eine Zwischenspeicher-Größe der CPU, etc. umfassen. In einem anderen Beispiel können die Variationen, wenn der Parameter RAM ist, dann eine Größe von RAM, eine Geschwindigkeit des RAM, einen Hersteller des RAM, etc. umfassen.Further, in one embodiment, one or more of the parameters may be independently configurable. For example, each of the parameters may be able to be changed independently of the other parameters. In one embodiment, each of the parameters may be used by the device to perform one or more actions. In yet another embodiment, the parameter variations may include a plurality of different types of the parameter, including a magnitude, magnitude, velocity, etc. associated with the parameter. If z. For example, if the parameter is a device CPU, then the variations of the parameter may include a manufacturer of the CPU, a speed of the CPU, a cache size of the CPU, etc. In another example, if the parameter is RAM, then the variations may include a size of RAM, a speed of the RAM, a manufacturer of the RAM, etc.
Noch weiter kann in einer Ausführungsform die Mehrzahl von Parameter-Variationen bei einem Server identifiziert werden. Zum Beispiel kann jede der Mehrzahl von Parameter-Variationen von einem Benutzer-Gerät, welches diese Parameter-Variationen hat, zu einem Server über ein Netzwerk (z. B. ein drahtloses Netzwerk, ein drahtbasiertes, ein zelluläres Netzwerk, ein Satelliten-Netzwerk, etc.) gesendet werden. In einer anderen Ausführungsform kann die Mehrzahl von Parameter-Variationen in einer Datenbank gespeichert und aus der Datenbank abgerufen werden.Still further, in one embodiment, the plurality of parameter variations may be identified at a server. For example, each of the plurality of parameter variations may be from a user device having these parameter variations to a server via a network (eg, a wireless network, a wired, a cellular, a satellite network, etc.). In another embodiment, the plurality of parameter variations may be stored in a database and retrieved from the database.
Auch kann die Mehrzahl von Parameter-Variationen, welche mit dem Gerät assoziiert ist, in einer Ausführungsform basierend auf einem oder mehreren Kriterien identifiziert werden. Zum Beispiel kann eine vorbestimmte Anzahl von Parameter-Variationen, welche bestimmt sind, populärste Benutzer-Variationen zu sein (z. B. Parameter-Variationen, welche in Kunden-Geräten am meisten benutzt werden, etc.) als die Mehrzahl von Parameter-Variationen ausgewählt werden, welche mit dem Gerät assoziiert sind.Also, in an embodiment, the plurality of parameter variations associated with the device may be identified based on one or more criteria. For example, a predetermined number of parameter variations that are destined to be most popular user variations (eg, parameter variations that are most widely used in customer devices, etc.) may be used as the plurality of parameter variations be selected, which are associated with the device.
Wie in Operation
In einem anderen Beispiel kann die monotone Menge von Voreinstellungen geordnet sein und jede darauffolgende Voreinstellung innerhalb der Menge von Voreinstellungen kann eine verbesserte erste Charakteristik und eine verminderte zweite Charakteristik haben, wenn verglichen mit der vorherigen Voreinstellung innerhalb der Menge von Voreinstellungen. In noch einer anderen Ausführungsform kann die erste Charakteristik mit Qualität (z. B. Bildqualität, Klangqualität, Erfahrungsqualität, etc.) assoziiert sein und die zweite Charakteristik kann mit Performance (z. B. Geschwindigkeit, Ökonomie, Effizienz, etc.) assoziiert sein oder Energielevel oder einem gewissen Verhältnis von Performance pro Einheits-Leistung bzw. Einheits-Energie. Zum Beispiel kann ein Software-Element auf dem Gerät abgelaufen werden, und jede darauf folgende Voreinstellung innerhalb der Menge von Voreinstellungen kann eine verbesserte Bildqualität des Software-Elements und eine verminderte Performance des Software-Elements haben.In another example, the monotone set of presets may be ordered, and any subsequent presets within the set of presets may have an improved first characteristic and a decreased second characteristic when compared to the previous preset within the set of presets. In yet another embodiment, the first characteristic may be associated with quality (eg, image quality, sound quality, experience quality, etc.) and the second characteristic may be associated with performance (eg, speed, economy, efficiency, etc.) or energy level or some ratio of performance per unit power. For example, a software element may be run on the device, and any subsequent presets within the set of presets may have improved image quality of the software element and decreased performance of the software element.
In einer anderen Ausführungsform können die Einstellungen unter Benutzung eines Algorithmus bestimmt werden. Zum Beispiel können die Einstellungen unter Benutzung eines gierigen Algorithmus, eines erschöpfenden Algorithmus, etc. bestimmt werden. In einer anderen Ausführungsform können die Einstellungen dadurch bestimmt werden, dass eine erste Charakteristik bezüglich einer zweiten Charakteristik für jede Voreinstellung der Menge von Voreinstellungen maximiert wird. Zum Beispiel kann jede einer Mehrzahl von Einstellungen für eine Parameter-Variation eine erste Charakteristik mit Qualität assoziiert haben und eine zweite Charakteristik mit Performance assoziiert haben, wobei die erste Charakteristik bezüglich der zweiten Charakteristik optimiert werden kann.In another embodiment, the settings may be determined using an algorithm. For example, the settings may be determined using a greedy algorithm, an exhaustive algorithm, etc. In another embodiment, the settings may be determined by maximizing a first characteristic relating to a second characteristic for each presetting of the set of presets. For example, each of a plurality of parameter variation settings may have associated a first characteristic with quality and associated a second characteristic with performance, wherein the first characteristic may be optimized with respect to the second characteristic.
Ferner können in einer Ausführungsform für jede der Mehrzahl von Parameter-Variationen die Einstellungen eine Konfiguration dieser Parameter-Variation umfassen, derart, dass das Gerät, welches diese Parameter-Variation hat, eine maximierte Ausgabe (z. B. Bildqualität, etc.) produziert, während eine Schwellwert-Anforderung (z. B. eine minimale Bildrate, maximaler Energie-Verbrauch, etc.) aufrechterhalten ist, während ein vorbestimmtes Software-Element abläuft. In einer anderen Ausführungsform kann das Software-Element ein Software-Programm umfassen, welches innerhalb des Gerätes installiert sein kann oder welches innerhalb des Gerätes zu installieren ist.Further, in one embodiment, for each of the plurality of parameter variations, the settings may include a configuration of that parameter variation such that the device having this parameter variation produces a maximized output (eg, image quality, etc.) while a threshold request (eg, a minimum frame rate, maximum power consumption, etc.) is maintained while a predetermined software item is running. In another embodiment, the software element may be a software program include, which may be installed inside the device or which is to be installed inside the device.
Noch weiter kann in einer Ausführungsform simultanes Bestimmen von Einstellungen für jede der Mehrzahl von Parameter-Variationen umfassen Erzeugen eines gerichteten azyklischen Graphen (DAG), welcher eine Mehrzahl von Knoten umfasst, wobei jeder der Mehrzahl von Knoten eine der Mehrzahl von Parameter-Variationen repräsentiert. In einer anderen Ausführungsform können die Knoten des DAG basierend auf einem oder mehreren Kriterien gerichtet sein. Zum Beispiel kann jeder der Mehrzahl von Knoten des DAG innerhalb des DAG basierend auf der Geschwindigkeit gerichtet sein, welche mit jedem Knoten assoziiert ist, wobei die Geschwindigkeit basierend auf den Geräte-Parameter-Variationen bestimmt ist, welche mittels des Knotens repräsentiert sind. In einer anderen Ausführungsform können die Knoten in dem DAG derart gerichtet sein, dass ein erster Knoten des DAG auf einen zweiten Knoten des DAG zeigen kann, wenn es bestimmt ist, dass der zweite Knoten des DAG definitiv schneller in einer oder in mehreren Hinsichten (z. B. in Hinsicht auf Verarbeitungs-Geschwindigkeit, etc.) ist als der erste Knoten des DAG.Still further, in one embodiment, simultaneously determining settings for each of the plurality of parameter variations may include generating a directional acyclic graph (DAG) comprising a plurality of nodes, wherein each of the plurality of nodes represents one of the plurality of parameter variations. In another embodiment, the nodes of the DAG may be directed based on one or more criteria. For example, each of the plurality of nodes of the DAG may be directed within the DAG based on the velocity associated with each node, the velocity being determined based on the device-parameter variations represented by the node. In another embodiment, the nodes in the DAG may be directed such that a first node of the DAG may point to a second node of the DAG, if it is determined that the second node of the DAG is definitely faster in one or more respects (e.g. B. in terms of processing speed, etc.) is considered the first node of the DAG.
Auch kann in einer Ausführungsform simultanes Bestimmen von Einstellungen für jede der Mehrzahl von Parameter-Variationen umfassen Einstellen von einer oder mehreren Einstellungen, welche mit jeder der Mehrzahl von Parameter-Variationen assoziiert ist. Zum Beispiel kann für jede der Mehrzahl von Parameter-Variationen eine oder mehrere Einstellungen eingestellt werden (z. B. an- oder abgeschaltet werden, erhöht werden, vermindert werden, etc.), um die größtmögliche Menge bzw. Umfang (magnitude) einer ersten Charakteristik bezüglich einer zweiten Charakteristik zu bestimmen. In einer anderen Ausführungsform können die Einstellungen, welche für jede der Mehrzahl von Parameter-Variationen bestimmt sind, die Einstellungen für die Mehrzahl von Parameter-Variationen umfassen, welche die größtmögliche Menge bzw. Größe der ersten Charakteristik bezüglich der zweiten Charakteristik ergeben.Also, in one embodiment, simultaneously determining settings for each of the plurality of parameter variations may include setting one or more settings associated with each of the plurality of parameter variations. For example, for each of the plurality of parameter variations, one or more settings may be adjusted (eg, turned on or off, increased, decreased, etc.) to obtain the largest possible magnitude of a first Characteristic to determine a second characteristic. In another embodiment, the settings determined for each of the plurality of parameter variations may include the settings for the plurality of parameter variations that give the largest possible magnitude of the first characteristic with respect to the second characteristic.
Zusätzlich kann in einer Ausführungsform simultanes Bestimmen von Einstellungen für jede der Mehrzahl von Parameter-Variationen aufeinander folgendes Einstellen einer einzelnen Einstellung für jede der Mehrzahl-Variationen gleichzeitig umfassen. Zum Beispiel kann für jede der Mehrzahl von Parameter-Variationen eine erste bestimmte Einstellung eingestellt werden, um die größte mögliche Menge einer ersten Charakteristik bezüglich einer zweiten Charakteristik zu bestimmen. Zusätzlich kann, nachdem die erste bestimmte Einstellung eingestellt ist, eine zweite Einstellung bestimmt werden, eingestellt zu werden, wobei die zweite bestimmte Einstellung für jede der Mehrzahl von Parameter-Variationen eingestellt ist.Additionally, in one embodiment, simultaneously determining settings for each of the plurality of parameter variations may comprise sequentially adjusting a single adjustment for each of the plurality of variations simultaneously. For example, for each of the plurality of parameter variations, a first particular setting may be set to determine the largest possible amount of a first characteristic with respect to a second characteristic. In addition, after the first specific setting is set, a second setting may be determined to be set with the second specific setting set for each of the plurality of parameter variations.
In einer anderen Ausführungsform kann ein simultanes Bestimmen von Einstellungen für jede der Mehrzahl von Parameter-Variationen umfassen Starten bei einer Minimal-Einstellungs-Menge bzw. Minimal-Einstellungs-Größe für jede der Mehrzahl von Parameter-Variationen und aufeinander folgendes Erhöhen einer einzelnen Einstellung für jede der Mehrzahl von Parameter-Variationen simultan. In noch einer anderen Ausführungsform kann simultanes Bestimmen von Einstellungen für jede der Mehrzahl von Parameter-Variationen umfassen Starten bei einer Maximal-Einstellungs-Größe für jede der Mehrzahl von Parameter-Variationen und aufeinander folgendes Vermindern einer einzelnen Einstellung für jede der Mehrzahl von Parameter-Variationen simultan.In another embodiment, simultaneously determining settings for each of the plurality of parameter variations may include starting at a minimum set amount for each of the plurality of parameter variations and successively increasing a single set for each of the plurality of parameter variations simultaneously. In yet another embodiment, simultaneously determining settings for each of the plurality of parameter variations may include starting at a maximum adjustment size for each of the plurality of parameter variations and sequentially decreasing a single adjustment for each of the plurality of parameter variations simultaneously.
In noch einer anderen Ausführungsform kann simultanes Bestimmen von Einstellungen für jede der Mehrzahl von Parameter-Variationen umfassen Starten bei sowohl einer Maximal-Einstellungs-Größe als auch einer Minimal-Einstellungs-Größe für jede der Mehrzahl von Parameter-Variationen und aufeinander folgendes Vermindern einer einzelnen Einstellung von dem Maximum und Erhöhen einer einzelnen Einstellung von dem Minimum für jede der Mehrzahl von Parameter-Variationen simultan, bis optimale Einstellungen bestimmt sind, welche die größtmögliche Menge bzw. Größe der ersten Charakteristik bezüglich der zweiten Charakteristik ergeben.In yet another embodiment, simultaneously determining settings for each of the plurality of parameter variations may include starting at both a maximum adjustment size and a minimum adjustment size for each of the plurality of parameter variations and successively decreasing a single one Setting the maximum and increasing a single setting of the minimum for each of the plurality of parameter variations simultaneously until optimum settings are determined which give the largest possible magnitude of the first characteristic with respect to the second characteristic.
Ferner kann in einer Ausführungsform jede der Mehrzahl von Parameter-Variationen beeinflussen, wie die Einstellungen bestimmt werden. Zum Beispiel kann jede der Mehrzahl von Parameter-Variationen (oder ihr entsprechender Knoten in dem DAG) für eine erste bestimmte Einstellung stimmen bzw. votieren, welche für jede der Mehrzahl von Parameter-Variationen eingestellt ist. In einem anderen Beispiel kann, nachdem die erste bestimmte Einstellung für jede der Mehrzahl von Parameter-Variationen eingestellt ist, jede der Mehrzahl von Parameter-Variationen (oder ihr entsprechender Knoten in dem DAG) dann für eine zweite bestimmte Einstellung stimmen bzw. votieren, welche für jede der Mehrzahl von Parameter-Variationen eingestellt ist.Further, in one embodiment, each of the plurality of parameter variations may affect how the settings are determined. For example, each of the plurality of parameter variations (or their corresponding node in the DAG) may vote for a first particular setting that is set for each of the plurality of parameter variations. In another example, after the first specific setting is set for each of the plurality of parameter variations, each of the plurality of parameter variations (or their corresponding node in the DAG) may then vote for a second particular setting, which is set for each of the plurality of parameter variations.
Noch weiter kann in einer Ausführungsform jede der Mehrzahl von Parameter-Variationen einen verschiedenen Level von Einfluss darauf haben, wie die Einstellungen bestimmt sind. Zum Beispiel kann ein Populationswert mit jeder der Mehrzahl von Parameter-Variationen (oder ihrem entsprechenden Knoten in der DAG) assoziiert sein. In einer anderen Ausführungsform kann ein Populationswert, welcher mit einer bestimmten Parameter-Variation assoziiert ist, einer vorbestimmten Anzahl von Benutzern entsprechen, welche die Parameter-Variation haben (z. B. in ihrem Gerät installiert etc.). In noch einer anderen Ausführungsform kann ein Populationswert, welcher mit einer bestimmten Parameter-Variation assoziiert ist, einem vorbestimmten Prozentsatz einer Gesamtzahl von Benutzern entsprechen, welche diese Parameter-Variation haben.Still further, in one embodiment, each of the plurality of parameter variations may have a different level of influence on how the settings are determined. For example, a population value may be associated with each of the plurality of parameter variations (or their corresponding node in the DAG). In another embodiment, a population value associated with a particular parameter variation may be a predetermined number of users which have the parameter variation (eg installed in their device etc.). In yet another embodiment, a population value associated with a particular parameter variation may correspond to a predetermined percentage of a total number of users having that parameter variation.
In noch einer anderen Ausführungsform kann der Populationswert, welcher mit einer bestimmten Parameter-Variation assoziiert ist, eine Größe (z. B. Stärke bzw. Festigkeit (strength) etc.) des Einflusses beeinflussen, welcher mittels der bestimmten Parameter-Variation bezüglich darauf ausgeübt wird, wie die Einstellungen bestimmt sind. Zum Beispiel kann ein Votum mittels der bestimmten Parameter-Variation für eine bestimmte Einstellung, welche für jede der Mehrzahl von Parameter-Variationen eingestellt ist, proportional mittels des Populationswertes erhöht werden, welcher mit der bestimmten Parameter-Variation assoziiert ist (z. B. mittels eines Multiplizierens des Votums mittels des Populationswertes, etc.). Auf diese Weise können populäre Parameter-Variationen, welche von einer großen Benutzerbasis verwendet werden, mehr Einfluss darauf haben, wie die Einstellungen bestimmt sind.In yet another embodiment, the population value associated with a particular parameter variation may affect a magnitude (eg, strength, etc.) of the influence exerted thereon by the particular parameter variation will determine how the settings are made. For example, a vote may be proportionally increased by means of the determined parameter variation for a particular setting set for each of the plurality of parameter variations by means of the population value associated with the particular parameter variation (eg multiplying the vote by the population value, etc.). In this way, popular parameter variations used by a large user base can have more influence on how the settings are determined.
Auch kann in einer Ausführungsform ein Index-Wert (z. B. ein Einfluss-Wert, etc.) mit jeder der Mehrzahl von Parameter-Variationen (oder ihrem entsprechenden Knoten in dem DAG) assoziiert sein. In einer anderen Ausführungsform kann der Index-Wert, welcher mit einer bestimmten Parameter-Variation assoziiert ist, einer Fähigkeit der bestimmten Parameter-Variation entsprechen, ein vorbestimmtes Software-Element bei einer vorbestimmten Bildrate abzulaufen bzw. ablaufen zu lassen. Zum Beispiel kann der Index-Wert –1 sein, wenn die bestimmte Parameter-Variation das vorbestimmte Software-Element nicht bei der vorbestimmten Bildrate ablaufen lassen kann. In einem anderen Beispiel kann der Index-Wert Null sein, wenn die bestimmte Parameter-Variation das vorbestimmte Software-Element unter Benutzung von einer oder mehreren Minimal-Einstellungen bei der vorbestimmten Bildrate ablaufen lassen kann. In noch einer anderen Ausführungsform kann der Index-Wert (n – 1) sein, wenn die bestimmte Parameter-Variation das vorbestimmte Software-Element unter Benutzung einer Maximal-Einstellung für eine Anwendung bei der vorbestimmten Bildrate ablaufen lassen kann, wobei n gleich ist der Anzahl von voreingestellten Einstellungen für jede der Mehrzahl von Parameter-Variationen, welche mittels der Anwendung unterstützt ist. Jede voreingestellte Einstellung entspricht einem Index.Also, in one embodiment, an index value (eg, an influence value, etc.) may be associated with each of the plurality of parameter variations (or their corresponding node in the DAG). In another embodiment, the index value associated with a particular parameter variation may correspond to an ability of the particular parameter variation to expire a predetermined software element at a predetermined frame rate. For example, the index value may be -1 if the particular parameter variation can not run the predetermined software element at the predetermined frame rate. In another example, the index value may be zero if the particular parameter variation can run the predetermined software element using one or more minimum settings at the predetermined frame rate. In yet another embodiment, the index value may be (n-1) if the determined parameter variation can run the predetermined software element using the maximum setting for an application at the predetermined frame rate, where n is equal to Number of preset settings for each of the plurality of parameter variations supported by the application. Each preset setting corresponds to an index.
In noch einer anderen Ausführungsform kann der Index-Wert, welcher mit einer bestimmten Parameter-Variation assoziiert ist, eine Menge (z. B. Stärke, etc.) des Einflusses beeinflussen, welcher mittels der bestimmten Parameter-Variation bezüglich darauf ausgeübt wird, wie die Einstellungen bestimmt werden. Zum Beispiel kann ein Votum mittels der bestimmten Parameter-Variation für eine bestimmte Einstellung, welche für jede der Mehrzahl von Parameter-Variationen eingestellt ist, erhöht oder erniedrigt werden proportional mittels des Index-Wertes, welcher mit der bestimmten Parameter-Variation assoziiert ist (z. B. mittels eines Multiplizierens des Votums mittels des Index-Wertes etc.). Auf diese Weise können Parameter-Variationen, welche mit größerer Wahrscheinlichkeit die Einstellungen benutzen, mehr Einfluss darauf haben, wie die Einstellungen bestimmt werden.In yet another embodiment, the index value associated with a particular parameter variation may affect an amount (eg, magnitude, etc.) of the influence exerted thereon by the particular parameter variation as to the settings are determined. For example, a vote may be incremented or decremented by the particular parameter variation for a particular setting set for each of the plurality of parameter variations, in proportion to the index value associated with the particular parameter variation (e B. by means of a multiplication of the vote by means of the index value etc.). In this way, parameter variations, which are more likely to use the settings, may have more influence on how the settings are determined.
Zusätzlich kann in einer Ausführungsform eine Nichtübereinstimmung bzw. ein Unterschied zwischen der Mehrzahl von Parameter-Variationen (oder entsprechenden Knoten in dem DAG) während eines Votierens für bestimmte Einstellungen identifiziert werden, welche für jede der Mehrzahl von Parameter-Variationen einzustellen sind. Zum Beispiel kann ein Teil der Mehrzahl von Parameter-Variationen (oder ihre entsprechenden Knoten in dem DAG) für eine bestimmte Einstellung votieren, welche für jede der Mehrzahl von Parameter-Variationen einzustellen ist, und ein anderer Teil der Mehrzahl von Parameter-Variationen (oder ihre entsprechenden Knoten in dem DAG) kann für eine andere bestimmte Einstellung votieren, welche für jede der Mehrzahl von Parameter-Variationen einzustellen ist.Additionally, in one embodiment, a mismatch between the plurality of parameter variations (or corresponding nodes in the DAG) may be identified during voting for particular settings to be set for each of the plurality of parameter variations. For example, a portion of the plurality of parameter variations (or their corresponding nodes in the DAG) may vote for a particular setting to be set for each of the plurality of parameter variations, and another portion of the plurality of parameter variations (or their corresponding nodes in the DAG) may vote for another particular setting to be set for each of the plurality of parameter variations.
In Antwort auf die Identifikation der Nichtübereinstimmung zwischen der Mehrzahl von Parameter-Variationen kann die Mehrzahl von Parameter-Variationen in eine Mehrzahl von Untergruppen aufgeteilt werden (z. B. kleinere DAGs, etc.). Wenn z. B. ein vorbestimmter Prozentsatz der Mehrzahl von Parameter-Variationen (oder ihre entsprechenden Knoten in dem DAG) für eine bestimmte Einstellung votieren, welche verschieden ist von Einstellungen, für welche andere Parameter-Variationen (oder ihre entsprechenden DAG-Knoten) votiert haben, kann der bestimmte Prozentsatz der Mehrzahl von Parameter-Variationen von dem DAG entfernt werden und in einen Unter-DAG zur Einstellungs-Bestimmung platziert werden. Auf diese Weise kann eine Einstellungs-Bestimmung für bestimmte Parameter-Variation in jeder Untergruppe effizienter bestimmt werden.In response to the identification of the mismatch between the plurality of parameter variations, the plurality of parameter variations may be divided into a plurality of subgroups (eg, smaller DAGs, etc.). If z. For example, a predetermined percentage of the plurality of parameter variations (or their corresponding nodes in the DAG) may vote for a particular setting that is different from settings for which other parameter variations (or their corresponding DAG nodes) have voted the certain percentage of the plurality of parameter variations are removed from the DAG and placed in a sub-DAG for the setting determination. In this way, a setting determination for certain parameter variation in each subgroup can be determined more efficiently.
Illustrativere Information wird nun bezüglich verschiedener optionaler Architekturen und Merkmale ausgeführt werden, mit denen das vorangehende Rahmen-Werk implementiert werden kann oder nicht implementiert zu werden braucht, je nach den Wünschen des Benutzers. Es sollte deutlich bemerkt werden, dass die folgende Information für illustrative Zwecke ausgeführt ist und nicht interpretiert werden sollte, in irgendeiner Weise zu begrenzen. Irgendwelche der folgenden Merkmale können optional mit oder ohne den Ausschluss von anderen beschriebenen Merkmalen inkorporiert werden.More illustrative information will now be performed on various optional architectures and features with which the previous framework work may or may not be implemented, depending on the wishes of the user. It should be clearly noted that the following information is for illustrative purposes and should not be interpreted as limiting in any way. Any of the following features may be optional with or incorporated without the exclusion of other described features.
Wie in Operation
Wie in Operation
Auch kann in einer Ausführungsform jeder Knoten in dem DAG eine eigentümliche bzw. eindeutige (unique) Variation einer Mehrzahl von möglichen Parametern repräsentieren, welche mit dem Gerät assoziiert sind. Zum Beispiel kann die Mehrzahl von möglichen Parametern, welche mit dem Gerät assoziiert sind, eine Geräte-CPU, eine Geräte-GPU, eine Geräte-Auflösung, umfassen und jeder Knoten in dem DAG kann eine einzigartige bzw. eindeutige Kombination einer bestimmten Geräte-CPU, Geräte-GPU und Geräte-Auflösung repräsentieren. Auf diese Weise zeigt ein erster Knoten, welcher auf einen zweiten Knoten innerhalb des DAG zeigt, an, dass die Mehrzahl von Parameter-Variationen, welche mit dem Gerät assoziiert sind, welche mittels des zweiten Knotens in dem DAG repräsentiert sind, definitiv eine bessere Verarbeitungs-Geschwindigkeit und Performance bieten, als die Mehrzahl von Parameter-Variationen, welche mit dem Gerät assoziiert sind, welche mittels des ersten Knotens in dem DAG repräsentiert sind.Also, in one embodiment, each node in the DAG may represent a unique variation of a plurality of possible parameters associated with the device. For example, the plurality of possible parameters associated with the device may include a device CPU, a device GPU, a device resolution, and each node in the DAG may have a unique combination of a particular device CPU , Device GPU and device resolution represent. In this way, a first node pointing to a second node within the DAG indicates that the plurality of parameter variations associated with the device represented by the second node in the DAG are definitely better processing Provide speed and performance as the plurality of parameter variations associated with the device represented by the first node in the DAG.
Wie in Operation
In einer Ausführungsform ist eine Population einem neuen Knoten unter Benutzung eines „Proxy”-Mechanismus zugewiesen. Der neue Knoten kann einer neuen Konfiguration entsprechen einschließlich einer neuen GPU, und/oder einer neuen CPU, und/oder einer neuen Anzeige-Auflösung. Weil neue Knoten natürlicherweise eine Benutzerbasis von anfänglich Null haben, kann der neue Knoten die Populations-Werte von einer anderen Konfiguration in derselben Klasse wie der neue Knoten „borgen”, vorzugsweise von der vorherigen Generation. Zum Beispiel kann eine neue Konfiguration die Populations-Werte einer existierenden Konfiguration borgen, welche für eine ausreichend lange Zeit in Benutzung gewesen ist, um eine etablierte und definierbare Benutzer-Basis zu haben. Die existierende Konfiguration dient als ein „Proxy” für den neuen Knoten. Zum Beispiel kann die existierende Konfiguration verdoppelt werden, sowie auch die assoziierten Populations-Werte, wobei die GPU durch eine neue GPU ersetzt wird. Der „Proxy”-Mechanismus ermöglicht eine Präpopulation eines DAG mit historischen Daten, um die neuen Knoten zu initialisieren, selbst bevor die neue Konfiguration in den Markt entlassen ist.In one embodiment, a population is assigned to a new node using a "proxy" mechanism. The new node may correspond to a new configuration including a new GPU, and / or a new CPU, and / or a new display resolution. Because new nodes naturally have a user base of initially zero, the new node may "borrow" the population values from another configuration in the same class as the new node, preferably from the previous generation. For example, a new configuration may borrow the population values of an existing configuration that has been in use for a sufficiently long time to have an established and definable user base. The existing configuration serves as a "proxy" for the new node. For example, the existing configuration can be doubled as well as the associated population values, replacing the GPU with a new GPU. The "proxy" mechanism allows for pre-population of a DAG with historical data to initialize the new nodes, even before the new configuration is released to the market.
Wie in Operation
Wie auch in Operation
In noch einer anderen Ausführungsform kann die monotone Menge von Voreinstellungen die Geräte-Einstellungen repräsentieren (sowohl abhängig als auch unabhängig), welche die Art und Weise bzw. den Weg beeinflussen, wie das Gerät ein oder mehrere Software-Elemente abläuft. Zum Beispiel kann jede der monotonen Menge von Voreinstellungen ein Textur-Abbildungs-Niveau (texture mapping level) von angezeigter Grafik diktieren, welches mittels des Geräts bereitgestellt ist, ein Beleuchtungs- bzw. Beleuchtungs-Modell (lighting model), welches mittels des Geräts während der Anzeige von Grafik benutzt wird, ein Antialising-Niveau, ein Objektdetail-Niveau, etc.In yet another embodiment, the monotone set of presets may represent the device settings (both dependent and independent) that affect the way the device executes one or more software elements. For example, each of the monotonous set of presets may dictate a texture mapping level of displayed graphics provided by the device, a lighting model that may be displayed by the device during the display of graphics is used, an antialising level, an object detail level, etc.
Zusätzlich kann in einer Ausführungsform Bestimmen der optimalen voreingestellten Einstellungen umfassen Bestimmen einer Mehrzahl von Performance-Leveln für das Gerät. Zum Beispiel kann eine Mehrzahl von abnehmenden Performance-Leveln (z. B. von einem Maximal-Performance-Level zu einem Minimal-Performance-Level, etc.) für das Gerät bestimmt werden (z. B. unter Benutzung von einem oder mehreren Benchmarks, etc.), wobei jedes aufeinander folgende bzw. nachfolgende Performance-Level anzeigt, dass das Gerät bei einer geringen Rate, weniger effizient, oder in einer anderen weniger gewünschten Weise durchführt (z. B. abläuft, berechnet, etc.), wenn verglichen mit dem vorherigen Level. In einer anderen Ausführungsform kann das Performance-Level mit einem Level von Ressourcen, welche von dem Gerät benutzt werden, assoziiert sein. Zum Beispiel kann das Performance-Level eine Menge von Verarbeitungs-Ressourcen, welche von dem Gerät benutzt werden, eine Menge von Software-Ressourcen, welche mittels des Geräts benutzt werden, eine Menge von Netzwerk-Ressourcen, welches mittels des Gerätes benutzt werden, eine Bildrate, welche mittels des Geräts bereitgestellt ist, eine Energie-Ressource, welche mittels des Geräts benutzt ist, etc. anzeigen. Zum Beispiel kann, wenn ein Gerät unter Benutzung von Batterie-Energie betrieben wird (im Gegensatz zu eingesteckt in einen Energie-Versorgungs-Auslass), die Bildqualität vermindert werden, um Energie-Verbrauch zu reduzieren und Batterie-Lebenszeit zu erhöhen.Additionally, in one embodiment, determining the optimal preset settings may include determining a plurality of performance levels for the device. For example, a plurality of decreasing performance levels (eg, from a maximum performance level to a minimum performance level, etc.) may be determined for the device (eg, using one or more benchmarks , etc.), where each successive or subsequent performance level indicates that the device is performing at a low rate, less efficiently, or in some other less desirable manner (eg expires, calculated, etc.) when compared to the previous level. In another embodiment, the performance level may be associated with a level of resources used by the device. For example, the performance level may include a quantity of processing resources used by the device, a set of software resources used by the device, a set of network resources used by the device Frame rate, which is provided by the device, a power resource, which is used by means of the device, etc. display. For example, when a device is operated using battery power (as opposed to being plugged into a power supply outlet), image quality may be reduced to reduce power consumption and increase battery life.
Ferner kann in einer Ausführungsform Bestimmen der optimalen voreingestellten Einstellungen umfassen Bestimmen einer Mehrzahl von Bildqualitäts-Levels für das Gerät. Zum Beispiel kann eine Mehrzahl von aufsteigenden Bildqualität-Levels (z. B. von einem Minimal-Bildqualitäts-Level zu einem Maximal-Bildqualitäts-Level etc.) für das Gerät bestimmt werden, wobei jeder aufeinander folgende Bildqualitäts-Level anzeigt, dass die Bildqualität, welche von dem Gerät angezeigt ist (z. B. ein oder mehr der Auflösung, Farbe, Detail, etc.) ansteigt, wenn mit dem vorherigen Level verglichen.Further, in one embodiment, determining the optimal preset settings may include determining a plurality of image quality levels for the device. For example, a plurality of ascending image quality levels (eg, from a minimum image quality level to a maximum image quality level, etc.) may be determined for the device, wherein each successive image quality level indicates that the image quality which is displayed by the device (eg, one or more of resolution, color, detail, etc.) increases when compared to the previous level.
Noch weiter kann in einer Ausführungsform jeder der Mehrzahl von Performance-Levels mit einer der Mehrzahl von Bildqualitäts-Levels für das Gerät assoziiert sein. Zum Beispiel kann jeder aufeinander folgend absteigende Performance-Level mit einem aufeinander folgend ansteigenden Bildqualitäts-Level derart assoziiert sein, dass, wenn die Performance des Gerätes abnimmt oder ein Level für das Gerät verfügbarer Energie, die mittels des Gerätes produzierte Bildqualität ansteigt. In einer anderen Ausführungsform kann der Bildqualitäts-Level für jedes der Mehrzahl von Performance-Level maximiert werden, basierend auf der Mehrzahl von Parameter-Variationen des Gerätes.Still further, in one embodiment, each of the plurality of performance levels may be associated with one of the plurality of image quality levels for the device. For example, each successive descending performance level may be associated with a sequentially increasing image quality level such that as the performance of the device decreases or a level of available energy to the device increases, the image quality produced by the device increases. In another embodiment, the image quality level for each of the plurality of performance levels may be maximized based on the plurality of parameter variations of the device.
Zum Beispiel kann für jedes bestimmte Performance-Level oder Level von Energie/Leistung eine Maximal-Bildqualität bestimmt werden, welche von dem Gerät bereitgestellt werden kann, basierend auf der Mehrzahl von Parameter-Variationen des Gerätes. In einer Ausführungsform kann die Maximal-Bildqualität unter Benutzung eines gierigen Algorithmus berechnet werden. In einer anderen Ausführungsform kann die Maximal-Bildqualität unter Benutzung eines erschöpfenden Algorithmus berechnet werden. Natürlich kann jedoch die Maximal-Bildqualität für jeden Performance-Level in irgendeiner Weise berechnet werden. Auf diese Weise können Voreinstellungen monoton ansteigen im Sinne von Bildqualität und monoton abfallen im Sinne von Performance.For example, for each particular performance level or level of energy / power, a maximum image quality may be determined which may be provided by the device based on the plurality of parameter variations of the device. In one embodiment, the maximum image quality can be calculated using a greedy algorithm. In another embodiment, the maximum image quality may be calculated using an exhaustive algorithm. Of course, however, the maximum Image quality for each performance level can be calculated in some way. In this way, presets can increase monotonically in terms of image quality and monotonically decrease in terms of performance.
Auch kann in einer Ausführungsform die Maximal-Bildqualität unter Benutzung einer analogen Zugangsweise bestimmt werden. Zum Beispiel kann eine Mehrzahl von Einstellungs-Elementen, eine „Bang-for-buck”-Indikator und ein „Scheitern”-Indikator bereitgestellt sein. In einem anderen Beispiel kann jedes Einstellungs-Element eine Eigenschaft in der Anwendung repräsentieren. In noch einem anderen Beispiel kann jedes Einstellungs-Element in diskreten Schritten eingestellt werden. In einer anderen Ausführungsform kann der „Bang-for-buck”-Indikator einen Gesamt-Wert (z. B. eine Bildqualität mal einer Bildrate) für eine vorhandene Voreinstellung zurückgeben. In noch einer anderen Ausführungsform kann der „Scheitern”-Indikator aktiviert werden, wenn und nur wenn die Voreinstellung ungültig ist. Das kann benötigt werden, wenn es abhängige Variablen gibt und einige Kombinationen von Einstellungs-Elementen tatsächlich ungültig sind.Also, in one embodiment, the maximum image quality may be determined using an analogue approach. For example, a plurality of adjustment elements, a "bang-for-buck" indicator and a "failure" indicator may be provided. In another example, each adjustment item may represent a property in the application. In yet another example, each adjustment item may be adjusted in discrete steps. In another embodiment, the "bang-for-buck" indicator may return a total value (eg, an image quality times a frame rate) for an existing preset. In yet another embodiment, the "fail" indicator may be activated if and only if the default is invalid. This may be needed if there are dependent variables and some combinations of preference items are actually invalid.
Zum Beispiel haben die zwei Einstellungs-Elemente A und B Stopps Falsch und Wahr, aber das Einstellungs-Element B kann nur auf Wahr gesetzt werden, wenn und nur wenn Einstellungs-Element A auch auf Wahr gesetzt ist. In solch einem Fall kann der „Scheitern”-Indikator nur aktiviert werden, wenn Einstellungs-Element A auf Falsch gesetzt ist und Einstellungs-Element B auf Wahr gesetzt ist. In einer anderen Ausführungsform kann angenommen werden, dass Stopps derart geordnet sind, dass ein Einstellen eines Einstellungs-Elements eins hoch (up one) Stopp immer zu gleicher/besserer Bildqualität und gleicher/schlechterer Performance führt.For example, the two setting items A and B have stops False and True, but the setting item B can only be set to true if and only if setting item A is also true. In such a case, the "fail" indicator can be activated only if setting item A is set to false and setting item B is set to true. In another embodiment, it may be assumed that stoppages are arranged such that setting an adjustment item one high up always results in equal / better picture quality and equal / worse performance.
Zusätzlich kann in einer Ausführungsform in einer simultanen Weise für jede der Parameter-Variationen ein monotone-Menge-Bestimmungs-Algorithmus damit starten, dass alle Einstellungs-Elemente auf ihre Minimal-Level werden vollständig herunter geregelt (d. h. ihre „Minimalsatz”-Werte). Nun kann ein Einstellungs-Element zu einer Zeit, jedes Einstellungs-Element temporär inkrementell genau ein Stopp bis zu seinem Maximal-Wert hochgedreht werden (d. h., wenn das Einstellungs-Element vollständig bis 10 von 10 hochgedreht ist, wird es nicht auf 11 hochdrehen). Wenn der „Scheitern”-Indikator nicht aktiviert, kann der „Bang-for-buck”-Indikator-Wert aufgezeichnet werden, bevor dieses Einstellungs-Element zurück auf seine ursprüngliche Position gesetzt wird. Sobald alle Einstellungs-Elemente inkrementell nach oben gedreht worden sind, wird das Element, welches den höchsten „Bang-for-buck”-Indikator-Wert produziert (und welches noch gültig war) permanent ein Stopp eingestellt (adjusted one stop). Dieser Prozess kann auf diese Weise wiederholt werden, bis alle Einstellungs-Elemente bei ihrer Maximal-Einstellung sind (d. h. ihren „Maximalsatz”-Werten). Die Sequenz von (#Stopps-#Einstellungs-Elementen + 1) Voreinstellungen, welche gewählt wurden, können optimale monotone Voreinstellungen repräsentieren.Additionally, in one embodiment, in a simultaneous manner, for each of the parameter variations, a monotone set determination algorithm may start with all of the adjustment elements being completely downshifted to their minimum levels (i.e., their "minimum set" values). Now, one setting item at a time, each setting item, can be incrementally incrementally incremented exactly one stop up to its maximum value (ie, if the adjustment item is fully turned up to 10 out of 10, it will not turn up to 11) , If the "failure" indicator is not activated, the "bang-for-buck" indicator value may be recorded before this adjustment item is reset to its original position. Once all of the adjustment elements have been incrementally turned up, the element producing the highest "bang-for-buck" indicator value (and which was still valid) is permanently set to a stop (adjusted one stop). This process can be repeated in this manner until all the adjustment items are at their maximum setting (i.e., their "maximum set" values). The sequence of (# stop # setting items + 1) presets that have been selected can represent optimal monotone presets.
Ferner kann in einer anderen Ausführungsform in einer simultanen Weise für jede der Parameter-Variationen ein monotone-Menge-Bestimmungs-Algorithmus damit starten, dass alle Einstellungs-Elemente vollständig hoch auf ihre Maximal-Level gedreht sind (d. h. ihre „Maximalsatz”-Werte). Nun kann, ein Einstellungs-Element zu einer Zeit, jedes Einstellungs-Element temporär inkrementell genau ein Stopp nach unten gedreht werden. Wenn der „Scheitern”-Indikator nicht aktiviert, dann kann der „Bang-for-buck”-Indikator aufgezeichnet werden, bevor dieses Einstellungs-Element zurück auf seine ursprüngliche Position gesetzt wird. Sobald alle Einstellungs-Elemente inkrementell nach unten gedreht worden sind, wird das Element, welches den höchsten „Bang-for-buck”-Indikator-Wert produzierte (und noch gültig war) permanent einen Stopp eingestellt. Dieser Prozess kann in dieser Weise wiederholt werden, bis alle Einstellungs-Elemente bei ihrer Maximal-Einstellung sind (d. h. ihren „Maximalsatz”-Werten).Further, in another embodiment, in a simultaneous manner, for each of the parameter variations, a monotonic quantification algorithm may start with all of the tuning elements fully rotated to their maximum levels (ie, their "maximum-set" values). , Now, one setting item at a time, each setting item can be incrementally incrementally turned exactly one stop down. If the "failure" indicator is not activated, then the "bang-for-buck" indicator may be recorded before this adjustment item is reset to its original position. Once all the adjustment elements have been incrementally turned down, the element which produced the highest "bang-for-buck" indicator value (and was still valid) is permanently stopped. This process can be repeated in this manner until all the adjustment items are at their maximum setting (i.e., their "maximum set" values).
Noch weiter können in einer Ausführungsform in einer simultanen Weise für jede der Parameter-Variationen ein oder mehrere der monotone-Menge-Bestimmungs-Algorithmen damit starten, dass alle Einstellungs-Elemente vollständig nach unten auf ihre Minimal-Level gedreht sind, und einer oder mehrere der monotone-Menge-Bestimmungs-Algorithmen kann damit starten, dass alle Einstellungs-Elemente vollständig nach oben auf ihre Maximal-Level gedreht sind. Zusätzlich können Einstellungen inkrementell mittels jedes der Algorithmen gemacht werden, bis die Einstellungen konvergieren. Auf diese Weise können optimale Voreinstellungs-Einstellungen in einer beschleunigten Weise bestimmt werden. Zusätzlich können schnellere Konfigurationen Einstellungs-Einstellungen beeinflussen, welche von Wichtigkeit für sie sind und können Voreinstellungs-Einstellungen vermeiden, welche mit langsameren Konfigurationen assoziiert sind oder mittels langsamerer Konfigurationen bestimmt sind.Still further, in one embodiment, in a simultaneous manner, for each of the parameter variations, one or more of the monotonic amount determination algorithms may start with all of the adjustment elements completely turned down to their minimum levels, and one or more The monotone quantitation algorithms may start with all of the tuning elements fully flipped up to their maximum levels. In addition, adjustments can be made incrementally using each of the algorithms until the settings converge. In this way, optimal default settings can be determined in an expedited manner. In addition, faster configurations may affect adjustment settings that are of importance to them and may avoid preset settings associated with slower configurations or determined by slower configurations.
Auch kann in einer Ausführungsform jeder der Mehrzahl von Knoten in dem DAG darüber abstimmen, welches Einstellungs-Element zu manipulieren ist (z. B. Erhöhen oder Erniedrigen, etc.). Zum Beispiel kann jeder der Mehrzahl von Knoten in dem DAG ein Votum abgeben darüber, welches Einstellungs-Element temporär inkrementell hochgedreht oder herunter gedreht werden soll genau ein Stopp für jede der Parameter-Variationen, welche den Knoten in dem DAG entsprechen. In einer anderen Ausführungsform kann das Einstellungs-Element, welches die größte Anzahl von Voten erhält, ausgewählt werden, für jeden Knoten inkrementell hoch oder runter gedreht zu werden.Also, in one embodiment, each of the plurality of nodes in the DAG may vote on which setting item to manipulate (eg, increase or decrease, etc.). For example, each of the plurality of nodes in the DAG may vote on which setting item to incrementally increment or decrement incrementally, just one stop for each of the parameter variations corresponding to the node in the DAG. In another embodiment, the adjustment element, which receives the largest number of votes, are selected to be incrementally turned up or down for each node.
In einer anderen Ausführungsform kann das Votum jedes Knotens gemäß dem Populations-Wert und dem Index-Wert, welcher mit diesem Knoten assoziiert ist bzw. sind, eingestellt werden. Zum Beispiel kann das Votum jedes Knotens in Proportion zu seinem Populations-Wert erhöht werden und kann gemäß seines Index-Wertes erhöht oder erniedrigt werden. Auf diese Weise kann populäreren und relevanteren Knoten in dem DAG ein größeres Gewicht während des Votierens gegeben werden.In another embodiment, the vote of each node may be adjusted according to the population value and the index value associated with that node. For example, the vote of each node may be increased in proportion to its population value and may be increased or decreased according to its index value. In this way, more popular and relevant nodes in the DAG can be given greater weight during voting.
Zusätzlich können optimale Voreinstellungs-Einstellungen für jede der Mehrzahl von Parameter-Variationen simultan bestimmt werden, wobei solche Voreinstellungen von einer niedrigsten Einstellung (z. B. „Min-Satz”, etc.) zu einer höchsten Einstellung (z. B. „Max-Satz”, etc.) reichen können und was „Bang-for-buck” (z. B. Bildqualität pro Performance-Einheit, etc.) bei jedem Schritt entlang des Weges maximieren kann. Ferner kann die Ordnung der monotonen Mehrzahl von Voreinstellungen derart aufrechterhalten werden, dass Monotonität von Performance und Bildqualität garantiert werden kann, wenn Parameter-Enumeratoren jeweils in derselben Weise geordnet sind. Ferner können optimale Voreinstellungs-Einstellungen für die Mehrzahl von Parameter-Variationen bestimmt werden, derart, dass Bildqualität bezüglich Performance-Kosten für jede der optimalen Voreinstellungs-Einstellungen maximiert werden kann.In addition, optimal default settings for each of the plurality of parameter variations may be determined simultaneously, with such presets varying from a lowest setting (eg, "Min Set", etc.) to a highest setting (eg, "Max Sentence ", etc.) and what" bang-for-buck "(eg image quality per unit performance, etc.) can maximize at each step along the way. Furthermore, the order of the monotone plurality of presets can be maintained such that performance and image quality monotony can be guaranteed when parameter enumerators are each ordered in the same way. Further, optimal default settings may be determined for the plurality of parameter variations such that image quality can be maximized in terms of performance cost for each of the optimal default settings.
Wie gezeigt ist, umfasst der exemplarische Parameter-DAG
Zusätzlich sind die Knoten in sowohl dem ersten Satz
In einer Ausführungsform kann die Geschwindigkeit von jedem der Knoten
Wie gezeigt ist, zeigen zusätzlich gerichtete Kanten
Optimieren mit SegmentationOptimize with Segmentation
Die Struktur des Parameter-DAG
Ein Endbenutzer kann auch Willens sein, variierende Performance im Sinne einer Bildrate abhängig von dem Genre eines Spiel-Anwendungs-Programms zu akzeptieren, welches auf dem Rechen-System des Endbenutzers abläuft. Zum Beispiel kann ein Endbenutzer, welcher ein niedriger-Qualität-Rechensystem betreibt, im Sinne von Verarbeitungs-Geschwindigkeit Willens sein, eine ziemlich geringe Performance im Sinne einer Bildrate zu akzeptieren (z. B. 25 Bilder pro Sekunde) für gewisse Genres von Spiel-Anwendungs-Programmen, wie etwa Echtzeit-Strategie, während höhere Performance (z. B. 60 Bilder pro Sekunde) für andere Genres eines Spiel-Anwendungs-Programms gefordert sind, wie etwa Sport. Im Gegensatz dazu kann ein Endbenutzer, welcher ein hoch qualitatives Rechen-System betreibt, höhere Erwartungen haben und 60 Bilder pro Sekunde oder mehr über alle Genres von Spiel-Anwendungs-Programmen hinweg erwarten. Typischerweise erwartet ein Endbenutzer, dass die Bildrate mit der Verarbeitungs-Geschwindigkeit des Rechen-Systems ansteigt. Daher ist erwartet, dass die Bildrate sich erhöht, wenn sich die optimalen Einstellungen erhöhen (unter der Annahme, dass höhere optimale Einstellungen mit höherer Qualität korrelieren).An end user may also be willing to accept varying performance in terms of frame rate depending on the genre of a game application program running on the end user's computing system. For example, an end user running a lower-quality computing system may be in the sense of processing speed willing to accept fairly low performance in terms of frame rate (e.g., 25 frames per second) for certain genres of games. Application programs, such as real-time strategy, while requiring higher performance (e.g., 60 frames per second) for other genres of a game application program, such as sports. In contrast, an end user who operates a high-quality computing system may have higher expectations and expect 60 frames per second or more across all genres of game application programs. Typically, an end user expects the frame rate to increase with the computational system processing speed. Therefore, the frame rate is expected to increase as the optimal settings increase (assuming that higher optimal settings correlate with higher quality).
Der Parameter-DAG
Sobald die Schwellwert-Ziele mit den Segmenten assoziiert sind, können die optimalen Einstellungen unabhängig für jedes Segment unter Benutzung der oben vorher im Zusammenhang mit
Zum Beispiel kann die optionale Einstellung, welche für den Knoten
Die optimalen Einstellungen, welche bestimmt werden, korrelieren direkt mit der Qualität von Bildern, welche von einem Rechen-System erzeugt werden, welches die optimalen Einstellungen für ein bestimmtes Anwendungs-Programm benutzt. Ein Endbenutzer erwartet, dass die Qualität von Bildern, welche von einem Rechen-System produziert werden, welches eine höhere Verarbeitungs-Geschwindigkeit hat, besser ist verglichen mit der Qualität von Bildern, welche von einem Rechen-System produziert sind, welches eine geringere Verarbeitungs-Geschwindigkeit hat. Daher sind, wenn die optimalen Einstellungen, welche für die Knoten
Um Monotonität der Einstellungen sicherzustellen und sicherzustellen, dass schnellere Knoten nicht niedrigere optimale Einstellungen haben als langsamere Knoten, wird eine Konsistenz-Überprüfung auf benachbarten Knoten in dem segmentierten Parameter-DAG
Wie in Operation
Wenn in Operation
Wenn ein Endbenutzer ein bestimmtes Anwendungs-Programm initiiert, kann dem Endbenutzer eine Schnittstelle eines Software-Programms (z. B. der Konsistenz-Überprüfer) präsentiert werden, was anbietet, die optimalen Einstellungen für die Parameter-Variation zu bestimmen, welche dem Rechen-System entspricht, welches der Endbenutzer benutzt. Das Software-Programm ist konfiguriert, um die Operationen durchzuführen, welche im Zusammenhang mit einer oder mehreren der
Das System
In der vorliegenden Beschreibung kann sich eine einzelne Halbleiter-Plattform auf einen einzelnen unitären Halbleiter-basierten integrierten Schaltkreis oder Chip beziehen. Es sollte bemerkt werden, dass der Ausdruck einzelne Plattform sich auch auf Mehr-Chip-Module mit einer erhöhten Konnektivität beziehen kann, welche eine Auf-Chip-Operation simulieren, und welche wesentliche Verbesserungen über ein Benutzen einer herkömmlichen Zentral-Verarbeitungs-Einheit (CPU) und Bus-Implementation machen. Natürlich können die verschiedenen Module auch separat oder in verschiedenen Kombinationen von Halbleiter-Plattformen nach dem Wünschen des Benutzers situiert bzw. angeordnet sein. Eines oder mehrere der Systeme
Das System
In einer Ausführungsform kann die Architektur und/oder Funktionalität der verschiedenen vorherigen Figuren in dem Zusammenhang des Zentral-Prozessors
Noch weiter kann die Architektur und/oder Funktionalität der verschiedenen vorherigen Figuren in dem Zusammenhang eines Allgemein-Computer-Systems, eines Schaltungs-Platte-Systems, eines Spielkonsole-Systems, welches für Unterhaltungs-Zwecke dediziert ist, eines Anwendungsspezifischen Systems, und/oder irgendeines anderen gewünschten Systems implementiert sein. Zum Beispiel kann das System
Während es nicht gezeigt ist, kann das System
Während verschiedene Ausführungsformen oben beschrieben sind, sollte es verstanden werden, dass sie nur als Weg eines Beispiels präsentiert worden sind und nicht als eine Begrenzung. Somit sollte die Breite und der Geltungsbereich der bevorzugten Ausführungsform nicht mittels irgendeiner der oben beschriebenen exemplarischen Ausführungsformen begrenzt sein, sondern sollte nur in Übereinstimmung mit den folgenden Ansprüchen und ihren Äquivalente definiert sein.While various embodiments are described above, it should be understood that they have been presented only as a way of example and not as a limitation. Thus, the breadth and scope of the preferred embodiment should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
Claims (20)
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/543,196 US10509658B2 (en) | 2012-07-06 | 2012-07-06 | System, method, and computer program product for simultaneously determining settings for a plurality of parameter variations |
US13/543,196 | 2012-07-06 | ||
US201361819478P | 2013-05-03 | 2013-05-03 | |
US61/819,478 | 2013-05-03 | ||
US13/921,146 | 2013-06-18 | ||
US13/921,146 US10668386B2 (en) | 2012-07-06 | 2013-06-18 | System, method, and computer program product for simultaneously determining settings for a plurality of parameter variations |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102013213113A1 true DE102013213113A1 (en) | 2014-01-16 |
Family
ID=49781668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE201310213113 Pending DE102013213113A1 (en) | 2012-07-06 | 2013-07-04 | Method for simultaneously determining settings for multiple parameter variations associated with device, involves ensuring consistency of settings across multiple segments |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN103530108B (en) |
DE (1) | DE102013213113A1 (en) |
TW (1) | TW201419212A (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5954617A (en) * | 1997-01-31 | 1999-09-21 | Cummins Engine Company, Inc. | System for controlling internal combustion engine performance in accordance with driver behavior |
US20070066403A1 (en) * | 2005-09-20 | 2007-03-22 | Conkwright George C | Method for dynamically adjusting an interactive application such as a videogame based on continuing assessments of user capability |
CN100533541C (en) * | 2006-01-19 | 2009-08-26 | 财团法人工业技术研究院 | Device and method for automatic adjusting parameters of display based on visual performance |
CN101740001A (en) * | 2008-11-19 | 2010-06-16 | 康佳集团股份有限公司 | Device and method and mobile terminal for brightness adjustment, |
CN101930719A (en) * | 2009-06-18 | 2010-12-29 | 辉达公司 | Method and system for automatically switching scene mode of display |
-
2013
- 2013-07-03 TW TW102123854A patent/TW201419212A/en unknown
- 2013-07-04 DE DE201310213113 patent/DE102013213113A1/en active Pending
- 2013-07-08 CN CN201310284893.2A patent/CN103530108B/en active Active
Also Published As
Publication number | Publication date |
---|---|
TW201419212A (en) | 2014-05-16 |
CN103530108B (en) | 2018-04-06 |
CN103530108A (en) | 2014-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102013213094B4 (en) | System, method and computer program product for computing settings for a device using one or more constraints | |
DE102013213093A1 (en) | A system, method and computer program product for simultaneously determining settings for a plurality of parameter variations | |
DE102013213047A1 (en) | System, method and computer program product for testing device parameters | |
US11351463B2 (en) | System, method, and computer program product for simultaneously determining settings for a plurality of parameter variations | |
DE102017124573A1 (en) | SYSTEMS AND METHOD FOR CRITING NEURONAL NETWORKS FOR AN OPERATIONAL EFFICIENT CONCLUSION | |
DE102016118210A1 (en) | Granular quality of service for computer resources | |
DE60004507T2 (en) | FAST GROUPING THROUGH SPARKLY FILLED DATA RECORDS | |
DE102020125207A1 (en) | UNATTENDED TRAINING FROM NEURONAL NETWORK TO IMAGE COMPRESSION WITH HIGH DYNAMIC SCOPE | |
DE112012000212T5 (en) | Technology for live analysis-based rematerialization to reduce register pressure and improve parallelism | |
DE102019122935A1 (en) | METHOD AND DEVICES FOR ASSIGNING A WORK LOAD TO AN ACCELERATOR USING MACHINE LEARNERS | |
DE112016005006T5 (en) | AUTOMATIC VIDEO EXECUTIVE SUMMARY | |
DE102020112961A1 (en) | TECHNIQUES FOR DYNAMIC PARTITIONING OF TASKS | |
DE102020132716A1 (en) | SYSTEM FOR ANALYZING AND IMPROVING SOFTWARE BASED ON GRAPH ATTENTION NETWORKS | |
DE112017000046T5 (en) | Assessment of the accuracy of a machine learning model | |
DE102015009799A1 (en) | Risk quantification for strategy application | |
DE112019007506T5 (en) | DETERMINING HIGH INTEREST DURATION OF GAMEPLAY SESSIONS FROM USER INPUT | |
DE112010005096T5 (en) | Methods and apparatus for evaluating resource capacity in a system of virtual containers | |
DE112014007090T5 (en) | AUTOMATIC TAGGING METHOD AND SYSTEMS DUE TO SOFTWARE EXECUTION TRACES | |
DE102013208041A1 (en) | Server-based graphics processing techniques | |
DE102013213048A1 (en) | System, method and computer program product for determining settings for a device | |
DE102012224492A1 (en) | Trigger window conditions using exception handling | |
DE102020112531A1 (en) | Operational metric calculation for workload type | |
DE112008003584T5 (en) | A uniform look and feel creating bi-graphic engine | |
DE202017007534U1 (en) | Multiscale 3D texture synthesis | |
DE102012107809A1 (en) | Browsing between mobile and non-mobile websites |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R082 | Change of representative |
Representative=s name: KRAUS & WEISERT PATENTANWAELTE PARTGMBB, DE |
|
R016 | Response to examination communication |