DETAILED ACTION
The communication is in response to the application filed on 9/18/2023 in which claims 1-20 are pending in the application. Claims 1,13, and 17 are independent form.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C 101 because the claim is directed to an abstract idea without significantly more.
Step 1: Claims 1-12 are directed to a system and therefore is a machine which is one of the statuary categories of inventions. Claim 13-16 are directed to a method (series of steps) and therefore is a process which is one the statuary categories of invention. Claim 17-20 are directed to a memory storage device and therefore is a manufacture which is one of the statutory categories of inventions.
Step 2A, Prong 1:
Claims 1 and 13 recite the limitation “recommend a second configuration for connecting one or more of the plurality of peripheral devices…”. And claim 17 recite the limitation “recommend that the at least one peripheral device be coupled to at least a second one of the plurality of ports based...”. This limitation is a process that, under the broadest reasonable interpretation, covers performance of the limitation in the mind, but for the recitation of generic computer components. In within the claim the word “recommend” in the context of this claim encompasses a user mentally, and with the aid of pen and paper draw a sketch diagram, that include a composite devices and external/ peripherals devices and the user can make a determination what’s the best fit, based on observation, evaluation judgement or opinion.
If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind, then its falls within the “Mental Process” grouping of abstract ideas the concepts performed in the minds including an observation, evaluation, judgement, and opinion.
Step 2, Prong 2:
The judicial exception is not integrated into a practical application. The claims recite the additional elements “obtain information for a plurality of peripheral devices coupled to at least some of a plurality of ports of the IHS in a first configuration;”, “obtaining actual speed information for a plurality of peripheral devices coupled to at least some of a plurality of ports of an Information Handling System (IHS) in a first configuration;” and “obtain real-time speed, priority, and power information for at least one of a plurality of peripheral devices coupled to at least a first one of a plurality of ports of an Information Handling System (IHS); “these limitation amounts to data gathering which is considered to be insignificant extra solution activity (See MPEP 2106.05(g);
The processor, memory, plurality of ports and peripheral devices in these steps are recited at a high-level of generality (i.e., as a generic processor performing a generic computer function) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, these additional element does not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. (See MPEP 2106.05(f)). The claim is directed to an abstract idea.
Step 2B:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The limitation of “obtaining” is considered mere data gathering which the court have identified as well-understood, routine, and conventional. See MPEP 2106.05(d). As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of the “memory”, "processor", "plurality of ports" and “peripheral devices” are merely a generic computer or generic computer components to apply the judicial exception which cannot provide an inventive concept.
Dependent Claim 2 recite the limitation “wherein the second configuration comprises connection information for at least one peripheral device of the plurality of peripheral devices to a respective port of the plurality of ports.” This additional element does not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. (See MPEP 2106.05(f)).
Dependent Claim 3 recite the limitation “wherein the plurality of ports comprise one or more higher speed ports configured to communicate with the peripheral devices…lower speed ports.” This additional element does not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. (See MPEP 2106.05(f)).
Dependent Claim 4 recite the limitation “… cause the IHS to obtain the information via a composite peripheral device comprising a plurality of ports.” which amounts to data gathering which is considered to be insignificant extra solution activity (See MPEP 2106.05(g);
Dependent Claim 5 recite the limitation “wherein the composite peripheral device comprises at least one of: a docking station, a display, or a hub.” This additional element does not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. (See MPEP 2106.05(f)).
Dependent Claim 6 recite the limitations “obtain identifying information for individual ones of the plurality of peripheral devices;”, “obtain respective maximum speed requirements of the individual ones of the plurality of peripheral…” and “obtain usage information for the individual ones of the plurality of peripheral devices;” These amounts to data gathering which is considered to be insignificant extra solution activity (See MPEP 2106.05(g); and “determine actual speeds used by the individual ones of the plurality of peripheral devices … devices.” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2))
Dependent Claim 7 recite limitation “… individual ones of the plurality of peripheral devices are obtained from a golden configuration datastore.” which amounts to data gathering which is considered to be insignificant extra solution activity (See MPEP 2106.05(g);
Dependent Claim 8 recite limitations “…peripheral devices are determined by a machine learning algorithm based, at least in part, on the respective maximum speed requirements “Which in this claim the word “determine” is a mental process and amounts to an abstract idea under the mental process grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2)) and “machine learning” additional element is described at high-level of generality such that it amounts no more than mere instructions to apply the exception using a generic computer component. (See MPEP 2106.05(f))
Dependent Claim 9 recite the limitations “determine respective actual speeds used by individual ones of the plurality of peripheral devices;” This amount to an abstract idea under the grouping of mental process (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2)) and “execute a knapsack algorithm to determine a best fit for connecting the plurality of peripheral devices to the plurality of ports based….” This additional element does not integrate the abstract idea into a practical application because they amount to no more than mere instructions to apply the abstract idea using generic computer components. (See MPEP 2106.05(f))
Dependent claim 10 recite limitation “execute a knapsack algorithm to determine a best fit for connecting the plurality of peripheral devices to the plurality of ports based, at least in part, on one or more of the following criteria…” This additional element does not integrate the abstract idea into a practical application because they amount to no more than mere instructions to apply the abstract idea using generic computer components. (See MPEP 2106.05(f))
Dependent claim 11 recite limitation “The IHS of claim 1, wherein the peripheral devices comprise at least one of: a docking station, a display, a projector, a camera, a microphone, a loudspeaker, headphones, a keyboard, a mouse, a scanner, a printer, or a tablet.” This additional element does not integrate the abstract idea into a practical application because is amount to no more than mere instructions to apply the abstract idea using high level of generality/generic computer components. (See MPEP 2106.05(f))
Dependent claim 12 recite limitations “wherein to obtain information for the plurality of peripheral devices, the program instructions, upon execution, further cause the IHS to:” which amounts to data gathering which is considered to be insignificant extra solution activity (See MPEP 2106.05(g); “monitor a utilization of at least one of the peripheral devices… and Serial Advanced Technology Attachment (SATA).” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2)).
Dependent claim 14 recite limitations “wherein obtaining the actual speed information for the plurality of peripheral devices further comprises:”, “obtaining identifying information for individual ones of the plurality of peripheral devices; “, “obtaining respective maximum speed requirements of the individual ones of the plurality of peripheral devices based, at least in part, on the identifying information; “, “obtaining usage information for the individual ones of the plurality of peripheral devices;” These amounts to data gathering which is considered to be insignificant extra solution activity (See MPEP 2106.05(g); and “determining actual speeds used by the individual ones of the plurality of peripheral devices based, …. devices.” This is a mental process and amount to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2))
Dependent claim 15 recite limitations “wherein recommending the second configuration for connecting the one or more of the plurality of peripheral devices to the one or more of the plurality of ports further comprises:” and “determining respective actual speeds used by individual ones of the plurality of peripheral devices;” These are mental process and amount to an abstract idea under the mental process grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2)) and “executing a knapsack algorithm to determine…plurality of peripheral devices;” This additional element does not integrate the abstract idea into a practical application because they amount to no more than mere instructions to apply the abstract idea using generic computer components. (See MPEP 2106.05(f)). Lastly, “recommending the best fit for connecting the plurality of peripheral devices to the plurality of ports as the second configuration.” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2))
Dependent claim 16 recite limitations “wherein recommending the second configuration for connecting the one or more of the plurality of peripheral devices to the one or more of the plurality of ports further comprises:” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2)) “executing a knapsack algorithm to determine a best fit for connecting the …. individual ones of the plurality of peripheral devices;” This additional element does not integrate the abstract idea into a practical application because they amount to no more than mere instructions to apply the abstract idea using generic computer components. (See MPEP 2106.05(f)) and “recommending the best fit for connecting the plurality of peripheral devices to the plurality of ports as the second configuration.” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2))
Dependent claim 18 recite limitations “…. wherein to obtain the real-time speed information for the at least one peripheral device, the program instructions further cause the processor to:” , “obtain identifying information for the at least one peripheral device;” , “ obtain a maximum speed requirement of the at least one peripheral device based, at least in part, on the identifying information; “, “obtain usage information for the at least one peripheral device when coupled to the at least first one of the plurality of ports;” These amounts to data gathering which is considered to be insignificant extra solution activity (See MPEP 2106.05(g); and “determine, by a machine learning algorithm, the real-time speed used by the at least one peripheral device based, at least in part, on the maximum speed requirement and the usage information for the at least one peripheral device.” Which in the dependent claim the word “determine” is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2)) and “machine learning” additional element is described at high-level of generality such that it amounts no more than mere instructions to apply the exception using a generic computer component. (See MPEP 2106.05(f))
Dependent claim 19 recite limitations “… wherein to recommend that the at least one peripheral …to:” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2)), “execute a knapsack algorithm to determine a best fit for connecting …. one peripheral device;” This additional element does not integrate the abstract idea into a practical application because they amount to no more than mere instructions to apply the abstract idea using generic computer components. (see MPEP 2106.05(f)) and “determine the at least second one of the plurality of ports for the recommendation based, at least in part, on the best fit.” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2))
Dependent claim 20 recite limitations “…. wherein to recommend that the at least one …. further cause the processor to:” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2)) “execute an algorithm to determine a best fit for connecting the at …. least one peripheral device;” This additional element does not integrate the abstract idea into a practical application because they amount to no more than mere instructions to apply the abstract idea using generic computer components. (see MPEP 2106.05(f)) and “determine the at least second one of the plurality of ports for the recommendation based, at least in part, on the best fit.” This is a mental process and amounts to an abstract idea under the mental processes grouping (observation, evaluation, judgement, and opinion). (See MPEP 2106.04(a)(2))
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-5, 11-13 and 17 are being claim rejected under 35 U.S.C 102(a)(1) and (a)(2) as being anticipated by Vichare et al (US PGPub 2019/0391898 A1) (hereinafter Vichare).
As per claim 1 Vichare teaches: An Information Handling System (IHS), comprising: a processor; and a memory coupled to the processor, the memory having program instructions stored thereon that, upon execution, cause the IHS to: [0017]- [0018] Information Handling System (IHS) [0028] “The server may include one or more processors and one or more non-transitory computer readable media storing instructions executable by one or more processors to perform various operations.”;
obtain information for a plurality of peripheral devices coupled to at least some of a plurality of ports of the IHS in a first configuration; [0032] “The peripheral profile 116 may indicate which peripherals (e.g., number of monitors, number of input devices, type of gaming controllers, and the like) are currently connected to the corresponding computing device “and;
recommend a second configuration for connecting one or more of the plurality of peripheral devices to one or more of the plurality of ports of the IHS based, at least in part, on the information. [0028] [0042] “The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.”, “the configuration recommendations 138 may include a recommendation to plug a USB 3.0 compatible peripheral into a USB 3.0 port rather than a USB 2.0 port to take advantage of the faster throughput of USB 3.0.”
As per claim 2 Vichare teaches: The IHS of claim 1, wherein the second configuration
comprises connection information for at least one peripheral device of the plurality of peripheral devices to a respective port of the plurality of ports. [0064] “The peripheral profile 222 may include a list of peripherals that have been connected to the computing device, the method of connection (e.g., what type of port was used)”.
As per claim 3 Vichare teaches: The IHS of claim 1, wherein the plurality of ports comprise one or more higher speed ports configured to communicate with the peripheral devices at higher communication speeds than one or more lower speed ports, and wherein the second recommendation comprises a recommendation for a first set of the plurality of peripheral devices to connect to the one or more high speed ports, and a second set of the plurality of peripheral devices to connect to the one or more lower speed ports. [0042] “the configuration recommendations 138 may include a recommendation to plug a USB 3.0 compatible peripheral into a USB 3.0 port rather than a USB 2.0 port to take advantage of the faster throughput of USB 3.0.”
As per claim 4 Vichare teaches: The IHS of claim 1, wherein the program instructions, upon execution, further cause the IHS to obtain the information via a composite peripheral device comprising a plurality of ports. [0017] [0081] “For example, a single headset device connected via USB to the host computing device may appear as (1) a headset earphone and a headset with microphone under an “audio inputs and outputs” ….”
As per claim 5 Vichare teaches: The IHS of claim 4, wherein the composite peripheral device comprises at least one of: a docking station, a display, or a hub. [0081] “For example, a single headset device connected via USB to the host computing device may appear as (1) a headset earphone and a headset with microphone under an “audio inputs and outputs” ….”
As per claim 11 Vichare teaches: The IHS of claim 1, wherein the peripheral devices comprise at least one of: a docking station, a display, a projector, a camera, a microphone, a loudspeaker, headphones, a keyboard, a mouse, a scanner, a printer, or a tablet. [0092] “Other I/O devices 810 may be devices that receive various inputs from a user and provide various outputs to the user, and may include a keyboard, a touchpad, a mouse, a printer, audio input/output devices, and so forth.”
As per claim 12 Vichare teaches: The IHS of claim 1, wherein to obtain information for the plurality of peripheral devices, the program instructions, upon execution, further cause the IHS to: monitor a utilization of at least one of the peripheral devices via a port selected from the group consisting of: Universal Serial Bus (USB) Type-A, USB Type-B, USB Type-C, Lightning, Firewire, Thunderbolt, DisplayPort, High-Definition Multimedia Interface (HDMI), Digital Visual Interface (DVI), and Serial Advanced Technology Attachment (SATA). ). [0032] “For example, the peripheral profile 116(N) may indicate that a user plugged a 27″ 1080p monitor into the computing device 102 via a High-Definition Multimedia Interface (HDMI) port for a particular period of time on particular days of the week. As another example, the peripheral profile 116(N) may indicate that a gaming mouse was connected to the computing device 102(N) via a USB port on a particular date and is currently still connected to the computing device 102(N).”
As per claim 13 Vichare teaches: A method, comprising:
obtaining actual speed information for a plurality of peripheral devices coupled to at least some of a plurality of ports of an Information Handling System (IHS) in a first configuration; and [0017]- [0018] Information Handling System (IHS) [0021] “The agent may gather various information …. (3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device, …” [0028] “The server may include one or more processors and one or more non-transitory computer readable media storing instructions executable by one or more processors to perform various operations.” [0032] “which peripherals were previously connected to the corresponding computing device 102, when the peripherals are connected, a length of time that the peripherals are connected, how much each peripheral is used when connected, and so on. For example, the peripheral profile 116(N) may indicate that a user plugged”
recommending a second configuration for connecting one or more of the plurality of peripheral devices to one or more of the plurality of ports based, at least in part, on the actual speed information. [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” [0028] “The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.”
As per claim 17 Vichare teaches: A memory storage device having program instructions stored thereon that, upon execution by a processor, cause the processor to: [0090] “…for storing instructions that can be executed by the processors 802 to perform the various functions described herein”
obtain real-time speed, priority, and power information for at least one of a plurality of peripheral devices coupled to at least a first one of a plurality of ports of an Information Handling System (IHS); and [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” [0062] “The power and performance profile 218 may include information on how the computing device consumes power and the type of performance (e.g., based on one or more benchmarks) that the computing device delivers. For example, the power may include whether the power profile is to conserve as much power as possible by turning off components that are not being used or whether the power profile is a server-like profile in which all components are always on (e.g., never turned off) regardless of whether they are being used or not.”
[0069] “The peripheral profile 222 may include a connection profile 316. The connection profile 316 may indicate when and how often a particular peripheral is connected to the computing device. For example, the connection profile 316 may include a day of the week 318 during which the peripheral was connected, a time of day 320 at which the peripheral was connected, a duration 322 of the connection,”
recommend that the at least one peripheral device be coupled to at least a second one of the plurality of ports based, at least in part, on the real-time speed, priority, and power information. [0028] “The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.” [0042] “the configuration recommendations 138 may include a recommendation to plug a USB 3.0 compatible peripheral into a USB 3.0 port rather than a USB 2.0 port to take advantage of the faster throughput of USB 3.0.” [0007] “The server may determine configuration differences between the device profile of the computing device and individual device profiles of the subset of the other device profiles and send the configuration recommendations to the computing device.” Under BRI the server may recommend a configuration to the computing devices based on the individual devices profiles in Vichare teaching a device profiles can be many of things but more specifically it can encompass real-time speed, priority and power information as cited in the first limitation of claim 17, and based on the profiles the server then can make a recommendation to USB peripheral to be coupled to another port.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 6 and 14 are rejected under 35 U.S.C 103 as being unpatentable over Vichare et al (US PGPub 2019/0391898 A1), in view of Amell et al (US PGPub 5922056 A).
As per claim 6 Vichare teaches a system of claim 1 detailed above.
Vichare does disclose: The IHS of claim 1, wherein to obtain information for the plurality of peripheral devices, the program instructions, upon execution, further cause the IHS to: [0017]- [0018] Information Handling System (IHS) [0032] “…which peripherals were previously connected to the corresponding computing device 102, when the peripherals are connected, a length of time that the peripherals are connected, how much each peripheral is used when connected, and so on. For example, the peripheral profile 116(N) may indicate that a user plugged”
obtain identifying information for individual ones of the plurality of peripheral devices [0025] “…peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.)”
obtain respective maximum speed requirements of the individual ones of the plurality of peripheral devices based, at least in part, on the identifying information; [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,”
obtain usage information for the individual ones of the plurality of peripheral devices; [0025] “…peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.) “ [0072] “The agent may determine a usage of peripheral devices, such as which types of devices (e.g., monitor(s), controller(s), and the like) are connected to the computing device, when they are used, how long they are used, which gaming applications and/or hardware components the peripheral devices use and which gaming applications and hardware components make use of the peripheral devices.”
Vichare does not explicitly disclose: “determine actual speeds used by the individual ones of the plurality of peripheral devices based, at least in part, on the respective maximum speed requirements and the usage information for the individual ones of the plurality of peripheral devices.” as required by the claim
However, Amell disclose: “determine actual speeds used by the individual ones of the plurality of peripheral devices based, at least in part, on the respective maximum speed requirements and the usage information for the individual ones of the plurality of peripheral devices.” [col 2 32-38] “If new devices are present, the controller obtains a device identifier from all-new peripheral devices attached to the controller port. The controller then interprets the device identifiers to determine a maximum communications speed for each device. Then the controller and all attached devices are configured to communicate at the maximum communications speed….”
Vichare and Amell are combinable because they are managing and configuring peripheral devices.
Therefore, it would have been obvious to one of the ordinary skills in the art before the effective filing date of the claimed inventions to modify the teaching of Vichare and the teaching of Amell to make a determination of actual used by peripheral devices based on their maximum speed requirement and usage information. Motivation to combine would be to provide a more effective optimal port configuration to precisely identifying the actual speed used by the individual ones of the plurality of peripheral devices.
As per claim 14 teach Vichare teaches a method of claim 13 detailed above.
Vichare does disclose: The method of claim 13, wherein obtaining the actual speed information for the plurality of peripheral devices further comprises: [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,”
obtain identifying information for individual ones of the plurality of peripheral devices; [0025] “…peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.)”
obtain respective maximum speed requirements of the individual ones of the plurality of peripheral devices based, at least in part, on the identifying information; [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,”
obtain usage information for the individual ones of the plurality of peripheral devices; [0025] “…peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.)” [0072] “The agent may determine a usage of peripheral devices, such as which types of devices (e.g., monitor(s), controller(s), and the like) are connected to the computing device, when they are used, how long they are used, which gaming applications and/or hardware components the peripheral devices use and which gaming applications and hardware components make use of the peripheral devices.”
Vichare does not explicitly disclose: “determine actual speeds used by the individual ones of the plurality of peripheral devices based, at least in part, on the respective maximum speed requirements and the usage information for the individual ones of the plurality of peripheral devices.” as required by the claim
However, Amell disclose: “determine actual speeds used by the individual ones of the plurality of peripheral devices based, at least in part, on the respective maximum speed requirements and the usage information for the individual ones of the plurality of peripheral devices.” [col2 32-38] “If new devices are present, the controller obtains a device identifier from all-new peripheral devices attached to the controller port. The controller then interprets the device identifiers to determine a maximum communications speed for each device. Then the controller and all attached devices are configured to communicate at the maximum communications speed of the slowest device connected to the port.”
Vichare and Amell are combinable because they are managing and configuring peripheral devices.
Therefore, it would have been obvious to one of the ordinary skills in the art before the effective filing date of the claimed inventions to modify the teaching of Vichare and the teaching of Amell to develop a method to make a determination of actual used by peripheral devices based on their maximum speed requirement and usage information. Motivation to combine would be to provide a more effective optimal port configuration to precisely identifying the actual speed used by the individual ones of the plurality of peripheral devices.
Claims 7,8 and 18 are rejected under 35 U.S.C 103 as being unpatentable over Vichare et al (US PGPub 2019/0391898 A1), in view of Alt et al (US PGPub 2019/0147364 A1)
As per claim 7 Vichare teaches a system of claim 6 detailed above.
Vichare does disclose: maximum speed requirements of the individual ones of the plurality of peripheral devices [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,”
Vichare does not explicitly disclose: “wherein the maximum speed requirements of the individual ones of the plurality of peripheral devices are obtained from a golden configuration datastore”; As required by claim
However, Alt disclose the use of parameter database [0041]- [0043]” … workloads based on some or all of the telemetry data such as processor utilization, cache utilization, a number or rate of cache misses, memory allocation utilization, memory bandwidth…. parameter database 622 for future use.”
Vichare and Alt are combinable because they are both focus on the concept of the result/performance of peripheral/computing devices.
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed inventions to modify teaching Vichare and with the teaching of Alt to have maximum speed requirements of the individual ones of the plurality of peripheral devices are obtained from a golden configuration datastore Motivation to combine would be to improve system performance to successfully obtain maximum speed requirement of individual ones of the plurality of peripheral devices from a parameter database.
As per claim 8 Vichare teaches a system of claim 6 detailed above.
Vichare discloses: “The IHS of claim 6, wherein the actual speeds used by the individual ones of the plurality of peripheral devices respective maximum speed requirements and the usage information for the individual ones of the plurality of peripheral devices. [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” [0025] “peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.)”, [0072] “The agent may determine a usage of peripheral devices, such as which types of devices (e.g., monitor(s), controller(s), and the like) are connected to the computing device, when they are used, how long they are used, which gaming applications and/or hardware components the peripheral devices use and which gaming applications and hardware components make use of the peripheral devices.”
Vichare does not explicitly disclose “are determined by a machine learning algorithm based, at least in part, on the respective maximum speed requirements and the usage information for the individual ones of the plurality of peripheral devices.;”.
However, Alt et al. Disclose use a machine learning/algorithms based on functionally of the computer system or computer hardware [0021] [0034] [0038] “the telemetry monitor module 502 is embodied as the telemetry circuitry 208. The telemetry monitor module 502 includes a processor monitor 508, a memory monitor 510, and a communication monitor 512. The processor monitor 508 may monitor processor utilization, cache utilization, a number or rate of cache misses, instructions per second, time to execute a workload or task, and processor temperature…… the telemetry monitor module 502 may monitor parameters such as power usage, voltage levels of, e.g., the processor 202 or the memory 204, a speed or voltage of one or more fans, etc. The telemetry monitor module 502 may monitor the various parameters continuously, continually, and/or periodically.” [0049] “a machine-learning-based algorithm for determination of a likelihood of failure of a memory device 214, the memory performance classification training module 610 may use any number of parameters of telemetry data, such as processor utilization, memory bandwidth utilization, memory temperature, etc.”
Vichare and Alt are combinable because they are both focus on the concept of the result of peripheral/computing devices.
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed inventions to modify teaching Vichare and with the teaching of Alt to use the actual speed of the individual one of the plurality of peripheral devices that are determined by machine learning algorithms with the respective maximum speed requirement and the usage information. Motivation to combine would be to improve system performance more precisely determining the actual speeds used by the individual ones of the plurality of peripheral devices by integrating machine learning algorithm based on the maximum speed and usage of the peripheral device.
As per claim 18 Vichare teaches a memory storage device of claim 17 detailed above.
Vichare discloses: The memory storage device of claim 17, wherein to obtain the real-time speed information for the at least one peripheral device, the program instructions further cause the processor to: [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” [0090] ““…for storing instructions that can be executed by the processors 802 to perform the various functions described herein”
obtain identifying information for the at least one peripheral device; [0025] “…peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.)”
obtain a maximum speed requirement of the at least one peripheral device based, at least in part, on the identifying information; [0021] ““(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,”
obtain usage information for the at least one peripheral device when coupled to the at least first one of the plurality of ports; [0025] “peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.)”, [0072] “The agent may determine a usage of peripheral devices, such as which types of devices (e.g., monitor(s), controller(s), and the like) are connected to the computing device, when they are used, how long they are used, which gaming applications and/or hardware components the peripheral devices use and which gaming applications and hardware components make use of the peripheral devices.”
Vichare does not explicitly disclose: determine, by a machine learning algorithm, the real-time speed used by the at least one peripheral device based, at least in part, on the maximum speed requirement and the usage information for the at least one peripheral device.
However, Alt discloses: the use of machine learning/algorithms based on functionally of the computer hardware [0021] [0034] [0038] “the telemetry monitor module 502 is embodied as the telemetry circuitry 208. The telemetry monitor module 502 includes a processor monitor 508, a memory monitor 510, and a communication monitor 512. The processor monitor 508 may monitor processor utilization, cache utilization, a number or rate of cache misses, instructions per second, time to execute a workload or task, and processor temperature…… the telemetry monitor module 502 may monitor parameters such as power usage, voltage levels of, e.g., the processor 202 or the memory 204, a speed or voltage of one or more fans, etc. The telemetry monitor module 502 may monitor the various parameters continuously, continually, and/or periodically.” [0049] “a machine-learning-based algorithm for determination of a likelihood of failure of a memory device 214, the memory performance classification training module 610 may use any number of parameters of telemetry data, such as processor utilization, memory bandwidth utilization, memory temperature, etc.”
Vichare and Alt are combinable because they are both focus on the concept of the result of peripheral/computing devices.
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed inventions to modify teaching Vichare and with the teaching of Alt to have a memory storage devices of execute the cited limitation above. Motivation to combine would be to improve system performance by using machine learning to determine the real-time speed based on maximum speed and usage to optimized port configuration.
Claim 9,10, 15,16,19, and 20 rejected under 35 U.S.C 103 as being unpatentable over Vichare et al (US PGPub 2019/0391898 A1), in view of Prabhu et.al (US PGPub 2020/0382381 A1)
As per claim 9 Vichare teaches a system of claim 1 detailed above.
Vichare does disclose: The IHS of claim 1, wherein to recommend the second configuration, the program instructions, upon execution, further cause the IHS to: [0028] “The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.”
determine respective actual speeds used by individual ones of the plurality of peripheral devices; [0021] “The agent may gather various information …. (3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” [0027] “The operations may include, at a pre-determined time interval (e.g., every second, every minute, every hour, every X number of hours (X>0), every day, every week, every month, or the like), (1) determining a hardware configuration of the computing device….”
Vichare does not explicitly disclose: “execute a knapsack algorithm to determine a best fit for connecting the plurality of peripheral devices to the plurality of ports based, at least in part, on the respective actual speeds used by the individual ones of the plurality of peripheral devices.” As required by the claim.
However, Prabhu discloses: the use of a knapsack algorithm [0028]- [0029] and further disclose
[0066] “…The data plane provisioning model 310 can include a functional block configured to determine data plane scale in the form of platform throughput…In some examples, the knap sack problem can use a function such as…. total objective throughput for the site to solve for using the knap sack problem. [0068] “…. In some examples, the recommendations can be generated in terms of a suggested number of management tools, routers, circuits, sites, WAN edges, and other resources and configurations for the network...”
Vichare and Prabhu are combinable because they are both focus on a problem based on the hardware components and what they entail (e.g. throughput, performance) also the problem of resources allocation.
Therefore, it would have been obvious to one of the ordinary skill in the art before the
effective filing date of the claimed inventions to modify teaching Vichare, with the
teaching of Prabhu to have a system to determine respective actual speeds used by individual ones of the plurality of peripheral devices; execute a knapsack algorithms to determine a best fit based respective actual speed used the individual one of the plurality of peripheral devices. Motivation to combine would be to improve system performance by applying Prabhu knapsack algorithms that is known to be a [0029] “conventional tool” and Vichare respective actual speed used by the individual ones of the plurality of devices to determine the best fit for connecting to an efficient and accommodating port. See KSR Int’l Co. v. Teleflex
As per claim 10 Vichare disclose a system of claim 1 detailed above.
Vichare does disclose: “The IHS of claim 1, wherein to recommend the second configuration, the program instructions, upon execution, further cause the IHS to: [ 0028] “The server may include one or more processors and one or more non-transitory computer readable media storing instructions executable by one or more processors to perform various operations.”
(a) actual speeds required by individual ones of the plurality of peripheral devices, [0021] “The agent may gather various information …. (3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” (b) priority of the individual ones of the plurality of peripheral devices based, at least in part, on respective times the respective individual ones of the plurality of peripheral devices are connected to the IHS, [0069] “The peripheral profile 222 may include a connection profile 316. The connection profile 316 may indicate when and how often a particular peripheral is connected to the computing device. For example, the connection profile 316 may include a day of the week 318 during which the peripheral was connected, a time of day 320 at which the peripheral was connected, a duration 322 of the connection,” (c) power requirements of the individual ones of the plurality of peripheral devices, or [0062] “The power and performance profile 218 may include information on how the computing device consumes power and the type of performance (e.g., based on one or more benchmarks) that the computing device delivers. For example, the power may include whether the power profile is to conserve as much power as possible by turning off components that are not being used or whether the power profile is a server-like profile in which all components are always on (e.g., never turned off) regardless of whether they are being used or not.” (d) usage time by an end user of the individual ones of the plurality of peripheral devices. [0025] “peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.)”, [0072] “The agent may determine a usage of peripheral devices, such as which types of devices (e.g., monitor(s), controller(s), and the like) are connected to the computing device, when they are used, how long they are used, which gaming applications and/or hardware components the peripheral devices use and which gaming applications and hardware components make use of the peripheral devices.”
However, Vichare does not explicitly disclose “execute a knapsack algorithm to determine a best fit for connecting the plurality of peripheral devices to the plurality of ports based, at least in part, on one or more of the following criteria” as required by the claim.
However, Prabhu discloses: the use of a knapsack algorithm [0028]- [0029] and further disclose
[0066] “…The data plane provisioning model 310 can include a functional block configured to determine data plane scale in the form of platform throughput…In some examples, the knap sack problem can use a function such as…. total objective throughput for the site to solve for using the knap sack problem. [0068] “…. In some examples, the recommendations can be generated in terms of a suggested number of management tools, routers, circuits, sites, WAN edges, and other resources and configurations for the network...”
Vichare and Prabhu are combinable because they are both focus on a problem based on the hardware components and what they entail (e.g. throughput, performance) also the problem of resources allocation.
Therefore, it would have been obvious to one of the ordinary skill in the art before the
effective filing date of the claimed inventions to modify teaching Vichare, with the
teaching of Prabhu to have system to recommend a second configuration then to execute a knapsack algorithm to determine a best fit for connecting the plurality of peripheral devices to the plurality of ports based, at least in part, on one or more of the following criteria cited above. Motivation to combine would be to improve system performance by applying Prabhu knapsack algorithms that is known to be a [0029] “conventional tool” and Vichare teaching of real-time speed, priority, power and usage to then give out a more optimal approach of port relocation that can consider each of the constraints cited above. See KSR Int’l Co. v. Teleflex
As per claim 15 Vichare teaches a method of claim 13 detailed above.
Vichare does disclose: wherein recommending the second configuration for connecting the one
or more of the plurality of peripheral devices to the one or more of the plurality of ports further
comprises: [0028] “The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.”
determine respective actual speeds used by individual ones of the plurality of peripheral devices; [0021] “The agent may gather various information …. (3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” [0027] “The operations may include, at a pre-determined time interval (e.g., every second, every minute, every hour, every X number of hours (X>0), every day, every week, every month, or the like), (1) determining a hardware configuration of the computing device….”
recommending the best fit for connecting the plurality of peripheral devices to the plurality of
ports as the second configuration. [0028] [0042] “The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.”, “the configuration recommendations 138 may include a recommendation to plug a USB 3.0 compatible peripheral into a USB 3.0 port rather than a USB 2.0 port to take advantage of the faster throughput of USB 3.0.”
Vichare does not explicitly disclose: “executing a knapsack algorithm to determine a best fit for connecting the plurality of peripheral devices to the plurality of ports based, at least in part, on the respective actual speeds used by the individual ones of the plurality of peripheral devices;” as required by the claim
However, Prabhu discloses: the use of a knapsack algorithm [0028]- [0029] and further disclose
[0066] “…The data plane provisioning model 310 can include a functional block configured to determine data plane scale in the form of platform throughput…In some examples, the knap sack problem can use a function such as…. total objective throughput for the site to solve for using the knap sack problem. [0068] “…. In some examples, the recommendations can be generated in terms of a suggested number of management tools, routers, circuits, sites, WAN edges, and other resources and configurations for the network...”
Vichare and Prabhu are combinable because they are both focus on a problem based on the hardware components and what they entail (e.g. throughput, performance) also the problem of resources allocation.
Therefore, it would have been obvious to one of ordinary skill in the art, prior to the effective filing date of the claimed inventions, to modify the teachings of Vichare and the teaching of Prabhu to have a method to recommend a second configuration utilizing one or more peripheral devices by determining their respective actual speeds and executing a knapsack algorithm to identify the best fit for the plurality of peripheral devices based on those speeds. Motivation to combine would be to improve system performance by applying Prabhu knapsack algorithms that is known to be a [0029] “conventional tool” and Vichare respective actual speed used by the individual ones of the plurality of devices to determine the best fit for connecting to an efficient and accommodating port. See KSR Int’l Co. v. Teleflex
As per claim 16 Vichare teaches a method of claim 13 detailed above.
Vichare does disclose: wherein recommending the second configuration for connecting the one
or more of the plurality of peripheral devices to the one or more of the plurality of ports further
comprises: [0028] “The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.”
(a) actual speeds required by individual ones of the plurality of peripheral devices, [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” (b) priority of the individual ones of the plurality of peripheral devices based, at least in part, on respective times the respective individual ones of the plurality of peripheral devices are connected to the IHS, [0069] “The peripheral profile 222 may include a connection profile 316. The connection profile 316 may indicate when and how often a particular peripheral is connected to the computing device. For example, the connection profile 316 may include a day of the week 318 during which the peripheral was connected, a time of day 320 at which the peripheral was connected, a duration 322 of the connection,”, and (c) a power requirement of the at least one peripheral device;”
(c) power requirements of the individual ones of the plurality of peripheral devices, or [0062] “The power and performance profile 218 may include information on how the computing device consumes power and the type of performance (e.g., based on one or more benchmarks) that the computing device delivers. For example, the power may include whether the power profile is to conserve as much power as possible by turning off components that are not being used or whether the power profile is a server-like profile in which all components are always on (e.g., never turned off) regardless of whether they are being used or not.”
(d) usage time by an end user of the individual ones of the plurality of peripheral devices. [0025] “peripheral devices that have been connected to the computing device, when they are plugged in, how long they are plugged in, and the like. The device profile may identify which peripherals have been attached to the computing device, how often each peripheral is used (daily, weekly, etc.), and how the peripheral is used (e.g., display video output, provide input, etc.)”, [0072] “The agent may determine a usage of peripheral devices, such as which types of devices (e.g., monitor(s), controller(s), and the like) are connected to the computing device, when they are used, how long they are used, which gaming applications and/or hardware components the peripheral devices use and which gaming applications and hardware components make use of the peripheral devices.”
Vichare does not explicitly disclose: “execute a knapsack algorithm to determine a best fit for
connecting the plurality of peripheral devices to the plurality of ports,” as required by the claim.
However, Prabhu discloses: the use of a knapsack algorithm [0028]- [0029] and further disclose
[0066] “…The data plane provisioning model 310 can include a functional block configured to determine data plane scale in the form of platform throughput…In some examples, the knap sack problem can use a function such as…. total objective throughput for the site to solve for using the knap sack problem. [0068] “…. In some examples, the recommendations can be generated in terms of a suggested number of management tools, routers, circuits, sites, WAN edges, and other resources and configurations for the network...”
Vichare and Prabhu are combinable because they are both focus on a problem based on the hardware components and what they entail (e.g. throughput, performance) also the problem of resources allocation.
Therefore, it would have been obvious to one of the ordinary skill in the art before the
effective filing date of the claimed inventions to modify teaching Vichare, with the
teaching of Prabhu to have a method to which would lead to the recommendation of a second configuration that encompasses all the cited limitations within a knapsack algorithm. Motivation to combine would be to improve system performance by applying Prabhu knapsack algorithms that is known to be a [0029] “conventional tool” and Vichare teaching of real-time speed, priority, power and usage to then give out a more optimal approach of port relocation that can consider each of the constraints cited above. See KSR Int’l Co. v. Teleflex
As per claim 19 teaches a memory storage device of claim 17 detailed above.
Vichare discloses: The memory storage device of claim 17, wherein to recommend that the at least one peripheral device be coupled to the at least second one of the plurality of ports, the program instructions further cause the processor to: [ 0028] ““The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.” [0090] ““…for storing instructions that can be executed by the processors 802 to perform the various functions described herein”
on the real-time speed, priority, and power information for the at least one peripheral device;” [0021] ““(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” [0062] “The power and performance profile 218 may include information on how the computing device consumes power and the type of performance (e.g., based on one or more benchmarks) that the computing device delivers. For example, the power may include whether the power profile is to conserve as much power as possible by turning off components that are not being used or whether the power profile is a server-like profile in which all components are always on (e.g., never turned off) regardless of whether they are being used or not.”
[0069] “The peripheral profile 222 may include a connection profile 316. The connection profile 316 may indicate when and how often a particular peripheral is connected to the computing device. For example, the connection profile 316 may include a day of the week 318 during which the peripheral was connected, a time of day 320 at which the peripheral was connected, a duration 322 of the connection,”, and (c) a power requirement of the at least one peripheral device;”
Vichare does not explicitly disclose: “execute a knapsack algorithm to determine a best fit for connecting the at least one peripheral device to the plurality of ports and determine the at least second one of the plurality of ports for the recommendation based, at least in part, on the best fit. As required by the claim.
However, Prabhu discloses: the use of a knapsack algorithm [0028]- [0029] and further disclose
[0066] “…The data plane provisioning model 310 can include a functional block configured to determine data plane scale in the form of platform throughput…In some examples, the knap sack problem can use a function such as…. total objective throughput for the site to solve for using the knap sack problem. [0068] “…. In some examples, the recommendations can be generated in terms of a suggested number of management tools, routers, circuits, sites, WAN edges, and other resources and configurations for the network...”
Vichare and Prabhu are combinable because they are both focus on a problem based on the hardware components and what they entail (e.g. throughput, performance) also the problem of resources allocation.
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed inventions to modify teaching Vichare, with the teaching of Prabhu to
have a memory storage device that can instruct the processor have a recommendation and to execute a knapsack algorithm to determine a best fit for connecting the at least one peripheral device to the plurality of ports based on the constricts cited above and to make recommendation based on the best fit. Motivation to combine would be to improve system performance by applying Prabhu knapsack algorithms that is known to be a [0029] “conventional tool” and all of Vichare peripheral profiles data/constraint cited above that leads to a faster/optimal port for at least one peripheral device to the best based on real-time speed, priority, power and usage. See KSR Int’l Co. v. Teleflex
As per claim 20 teaches a memory storage device of claim 17 detailed above.
Vichare discloses: The memory storage device of claim 17, wherein to recommend that the at least one peripheral device be coupled to the at least second one of the plurality of ports, the program instructions further cause the processor to: [0028] “] “The operations may include determining one or more configuration recommendations based on the one or more configuration differences and sending the one or more configuration recommendations to the computing device.” [0090] “…for storing instructions that can be executed by the processors 802 to perform the various functions described herein”;
(a) the real-time speed required by the at least one peripheral device, [0021] “(3) peripheral information (e.g., including monitor refresh rate, monitor response time, controller actuation speed, and the like) of the computing device,” (b) the priority of the at least one peripheral device based, at least in part, on a connection time of the at least one peripheral device [0069] “The peripheral profile 222 may include a connection profile 316. The connection profile 316 may indicate when and how often a particular peripheral is connected to the computing device. For example, the connection profile 316 may include a day of the week 318 during which the peripheral was connected, a time of day 320 at which the peripheral was connected, a duration 322 of the connection,”, and (c) a power requirement of the at least one peripheral device;” [0062] “The power and performance profile 218 may include information on how the computing device consumes power and the type of performance (e.g., based on one or more benchmarks) that the computing device delivers. For example, the power may include whether the power profile is to conserve as much power as possible by turning off components that are not being used or whether the power profile is a server-like profile in which all components are always on (e.g., never turned off) regardless of whether they are being used or not.”
Vichare does not explicitly disclose: execute an algorithm to determine a best fit for connecting the at least one peripheral device to the plurality of ports based, and
determine the at least second one of the plurality of ports for the recommendation based, at least in part, on the best fit. As required by the claim
However, Prabhu discloses: the use of a knapsack algorithm [0028]- [0029] and further disclose
[0066] “…The data plane provisioning model 310 can include a functional block configured to determine data plane scale in the form of platform throughput…In some examples, the knap sack problem can use a function such as…. total objective throughput for the site to solve for using the knap sack problem. [0068] “…. In some examples, the recommendations can be generated in terms of a suggested number of management tools, routers, circuits, sites, WAN edges, and other resources and configurations for the network...”
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed inventions to modify the teaching of Vichare, with the teaching of Prabhu to have a memory storage device that can instruct the processor to execute a knapsack algorithm to determine a best fit for connecting the at least one peripheral device to the plurality of ports based on the constricts cited above and to make recommendation based on the best fit. Motivation to combine would be to improve system performance by applying Prabhu knapsack algorithms that is known to be a [0029] “conventional tool” and all of Vichare peripheral profiles data/constraint cited above that leads to a faster/optimal port for at least one peripheral device to the best based on real-time speed, priority and power. See KSR Int’l Co. v. Teleflex
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Abdulaal et al. (US Patent No. 2022/0138019 A1) disclose a method for a recommendation engine that use machine learning to generate a recommendation using the performance predictions, and the recommendation specifies a hardware configuration of the compliant hardware configurations; sending the recommendation to the data cluster; and initiating the performance of the workload on the hardware configuration.
Ivan et al. (US Patent No. 6,832,271-B1) disclose monitoring and data displaying utility for monitoring and displaying information pertaining to a plurality of USB devices connected to a computer, the displaying being performed on a computer display screen communicably coupled to the computer, the information pertaining to the plurality of USB devices including status information pertaining to the plurality of USB devices.
Astigarraga et al. (US Patent No. 2016/0226704 A1) disclose configuring ports of interconnected communications equipment include, defining configuration parameters for at least one port of a plurality of ports of a plurality of interconnected communications devices.
Chakra et al. (US Patent No 2017/0293521 A1) disclose a method calculating a first efficiency of a first device connected to a host system when a second device is not connected to the host system.
Manor et al. (US Patent No. 2014/0089532 A1) disclose a USB Host sends a request for a Device descriptor to the USB Device, receives a plurality of descriptors in a single transfer from the USB Device, and sets a configuration of the USB Device based on the received plurality of descriptors.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ASHMEED ACHILLE whose telephone number is (571)272-9437. The examiner can normally be reached Monday-Friday 7am -4pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, PIERRE VITAL can be reached at (571)272-4215. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/A.A./Examiner, Art Unit 2198
/PIERRE VITAL/Supervisory Patent Examiner, Art Unit 2198