Performance using the virtualization problem
If we compare our software installed in a physical host and a comparable VM (same CPU, memory), we notice that the product is twice slower when running in a virtual machine (guest operating system is Windows 2003, the use of an ESXi 4.0 host. The software uses a single CPU)
As we are not in the production environment, we tried with all other VM turned off. We tested our VM with and without reserve of CPU (best results with), with and without memory (absolutely no difference) and 1, 2 and 4 vCPU
After several tests, it seems that the problem comes from the use of semaphores: when replacing them with critical sections (but we cannot just replace), the performances are quite the same between the physical host and the virtual machine. All the code is executed with similar performance, but when using semaphores, the VM uses longer than the physical host CPU.
Someone at - it something on such a problem ears already? Is there a reason to explain the poor performance when using semaphores Windows hosted by ESXi 4.0?
For example, we wrote a simple program to compare hosted by ESX Windows semaphores (in our laboratory, it took 10 sec on a physical host and 22sec in a virtual machine):
#include "stdafx.h".
int _tmain (int argc, _TCHAR * argv)
{
unsigned __int64 nCount;
NTickCount = DWORD: GetTickCount();
HANDLE hSemaphoreBridgets = CreateSemaphore (NULL, 1, 1, NULL);
for (nCount = 0; nCount < 10000000; ++ nCount)
{
WaitForSingleObject (hSemaphoreBridgets, INFINITE);
ReleaseSemaphore (hSemaphoreBridgets, 1, NULL);
}
printf ("%d s\r\n duration", (: GetTickCount() - nTickCount) / 1000);
CloseHandle (hSemaphoreBridgets);
return 0;
}
I have your reference of profiling and found that he spends most of his time in these three Windows HAL functions:
HAL 39.83%! KfLowerIrql
HAL 19,82%! KeRaiseIrqlToDpcLevel
19.07% hal! KeRaiseIrqlToSynchLevel
Hot spots in each function are the access TPR (0FFFE0080h is the address of the TPR in the local APIC):
HAL! KfLowerIrql:
807168e4 890d8000feff mov dword ptr ds:------[0FFFE0080h], ecx
807168ea a18000feff mov eax, dword ptr ds:-[FFFE0080h]
HAL! KeRaiseIrqlToDpcLevel:
807168a 0 8b158000feff mov edx, dword ptr ds:-[0FFFE0080h]
807168a 6 c7058000feff41000000 mov dword ptr ds:------[0FFFE0080h], 41 h
HAL! KeRaiseIrqlToSynchLevel:
807168bc 8b158000feff mov edx, dword ptr ds:-[0FFFE0080h]
807168c 2 c7058000feff41000000 mov dword ptr ds:------[0FFFE0080h], 41 h
Since the local APIC is virtualized, TPR access usually causes a VM exit under hardware virtualization. However, Intel has introduced FlexPriority, which prevents the release of the virtual computer for all TPR readings and some TPR Scriptures. For this reason, ESX 4.0 by default x - VT for 32-bit Windows 2003 on Intel FlexPriority chips. Unfortunately, FlexPriority isn't a panacea. On native hardware, TPR access are usually only a few cycles. With FlexPriority, TPR access which do not cause a VM output may still take hundreds of cycles. Access TPR cause VM-output take several cycles of a thousand. Fortunately, we still have the possibility to use binary translation. Under the binary translation, TPR access usually take dozens of cycles.
For this particular workload, you must configure your client to use binary translation. On my system of Penryn, benchmark runs in 22 seconds using VT - x (with FlexPriority), but it takes 13 seconds using the binary translation. (For completeness, it takes 90 seconds using VT - x without FlexPriority).
Your client's situation is different. AMD has never introduced an equivalent to FlexPriority technology. However, if your customer has configured their VM to use the material support of the MMU, then the virtual computer will use AMD - V, which suffers from the same problems that VT - x without FlexPriority. Make sure they have configured computer virtual for the MMU software support so that it runs using the binary translation. (For this guest under ESX 3.5 default execution mode is binary translation).
Tags: VMware
Similar Questions
-
WRT160N performance using the adapter G
IM about to buy a new router and stores near my place are all embellished wireless routers N. Im planning to get the WRT160N, but the problem is that my laptop has wireless g adapter.
So my question is how will performance be since the adapter/router combo is different? I know that I will have no gain, but it's going as good N Router work a G router would be on a G adapter?
Thanks in advance.
P.S im running windows Xp on the laptop.
If your laptop has a built-in wireless card so its only going to get 54 Mbps. If you have a Wireless N router you will need to get a Wireless N adapter in order to reach up to 300 Mbit/s speeds.
You may need to configure the router from N to B & G in wireless mode settings. This can frustrate the point in getting a N.
Given the low cost of wireless adapters can be better to upgrade both at the same time and ensure compatibility and performance (perhaps).However, the two will work together.
-
Cube Performance for the Refresh problem
We are facing a strange performance problem with the refresh of the cube. The cube that would take 1 HR to update takes about 3.5 to 4 hours without any change in the environment. In addition, the data it processes are almost the same before and now. Only these cube out of all of the cubes in the workspace suffers the problem of performance over a period of time.
Details of the cube:
This cube has 7 dimensions and 11 measures (mixture of sum and avg as grouping algorithm). No compression. Cube is partitioned (48 partitions). Main source of data is a materialized view that is partitioned in the same way as the cube.
Data volume: 2480261 records in the source to deal with everyday (almost evenly distributed across the partition)
Cube is refreshed with the script below
DBMS_CUBE. BUILD (< < cube_name > >, 'SS', 5, false, true, false, true);
Has anyone faced a similar question? Please can advise on what could be the cause of performance degradation.
Environment - Oracle Database 11g Enterprise Edition Release 11.2.0.3.0
MN - awm11.2.0.2.0ARecords are recorded in CUBE_BUILD_LOG if you generate from DBMS_CUBE. BUILD or AWM. (The situation for CUBE_REJECTED_RECORDS is different).
Maybe you build another schema? Records are sent to the CUBE_BUILD_LOG table in the schema of the invoker, not the AW patterns. For example, if you have an AW in the SCOTT schema and run the DBMS_CUBE. BUILD connected call as SCOTT, then all the log records will be inserted in SCOTT. CUBE_BUILD_LOG. But if you run DBMS_CUBE. BUILD connected as certain master pattern, say OLAPDBA, then the folders would be added in OLAPDBA. CUBE_BUILD_LOG. In both cases if the table does not exist, then the construction will continue without error (and connect).
On the slowdown in general construction, have you tried the cube of compensation and rebuild from scratch? If you have visited additional charges running for awhile, then can slow down the performance of cube generation. Think about the fragmentation of the disk, and you get the basic idea.
-
performance on the VMS problem
Hello
Do you have a do deal with all nicely performace concern (that is to say CPU, memory, network or disk) with offset in VMtools version and the version of the material on any version of Esxi host.
My Esxi version: 5.5 build-3029837 and 2702869.
Please suggest if all available KB associated with this type of questions.
For Ex:
Name: any1
GuestOS: Microsoft Windows Server 2012 (64-bit)
Version: v8
ToolsRunningstatus: guestToolsRunning
ToolsStatus: toolsOk
ToolsVersion: 9357
Name: any2
GuestOS: CentOS 4/5/6 (64-bit)
Version: v7
ToolsRunningstatus: guestToolsRunning
ToolsStatus: toolsOld
ToolsVersion: 8394
Name: any3
GuestOS: Microsoft Windows Server 2012 (64-bit)
Version: v8
ToolsRunningstatus: guestToolsRunning
ToolsStatus: toolsOk
ToolsVersion: 9355
Name: any4
GuestOS: Red Hat Enterprise Linux 6 (64-bit)
Version: v9
ToolsRunningstatus: guestToolsRunning
ToolsStatus: toolsOld
ToolsVersion: 9355
Yes, it could be the performance impact, but not specifically because of a link between VMware Tools v9 and HW version v8.
VMware Tools 9 implies that you are on vSphere 5.1 or higher.
And here the HW version 9 or higher.
The HW version could have the impact on performance if you follow is not the version of vSphere.
Notice that handling change when you go to HW v9 or higher (Web client)
-
UCS-C200M2 and the performance of the 1980s...
Has anyone deployed UCS C200 M2 boxes and tried to team onboard gigabit interfaces? I'm void Mbps deployed VM CUCM 8.5.1 performance using the prescribed Cisco 1000 user model. I ran the NIC and stand alone teams and get the same result, seriously bad performance. I have a Dell 2970 on the same switch running ESXi and am pulling almost gigabit wirline her. The two are running EXSi 4.1. Both are associated by using the road based on the hash of the IP. Same downloads from the ESXi host IP address is dead slow.
Please open a TAC service request because we need more information about this configuration.
Just a quick check. You have all the traffic shaping configured on the virtual switch on the ESXi host output ports?
HTH
Padma
-
Sharing a vApp, catalog by using the vCloud API
I need to share the vApp using the vCloud API but cannot find anything it either relating to the sharing of operation in the API documentation. If someone was able to perform using the API please give me the steps or the example code to do the same.
Hello
You can share vApps among members of your organization.
'Control of access to the catalogues and vApps' - vCloud API Guide 1.5, Pg No. 157.
GET https://vcloud/api/vApp/{VAPP id} / controlAccess - read access control settings on the vApp.
POST https://vcloud/api/vApp/{VAPP id} / action/controlAccess - update settings for access control on the paralytic.
Kind regards
Rajesh Kamal.
-
I installed windows 7 in my lappy... When I use the lappy for long... he get odious... I'm irritating with that... and when I restart it started working as usual.please help me form this problem
Hello
1. have there been recent changes to the computer before the show?
2. this happens to you when you work on any specific application?
I suggest you follow the given steps and later a update on the State of the question.
Method 1: Try to run the troubleshooter of Performance:
http://Windows.Microsoft.com/en-us/Windows7/open-the-performance-Troubleshooter
Method 2: Optimize Windows 7 for better performance:
http://Windows.Microsoft.com/en-us/Windows7/optimize-Windows-7-for-better-performance
Important: when running chkdsk on the drive hard if bad sectors are found on the disk hard when chkdsk attempts to repair this area if all available on which data may be lost.
Ways to improve your computer's performance:
http://Windows.Microsoft.com/en-us/Windows7/ways-to-improve-your-computers-performance
For all windows questions do not hesitate to contact us and we will be happy to help you.
-
Performance-to-many problem (using the model of the FAQ)
After reading "HOW TO: post a request for tuning SQL - model showing statement" I gathered:
I have included some general information at the bottom of the post
The following SQL statement has been identified as a bad performance. It takes ~ 160 seconds to run, but similar (indicated below first statement) SQL statements run in ~ 1 second.
SQL taking 160 seconds:
SQL in ~ 1 second or lessSELECT a.* FROM table_a a INNER JOIN table_a_b ab ON a.id = ab.media_fk WHERE ab.channel_fk IN (7, 1);
Or:... ab.channel_fk IN (7);
The purpose of the SQL is to return lines from table_a associated table_b (not in SQL) through the junction table table_a_b.... ab.channel_fk IN (6, 9, 170, 89);
The version of the database is 10.2.0.4.0
These are the parameters relevant for the optimizer:
Here is the output of the EXPLAIN PLAN of:show parameter optimizer; NAME TYPE VALUE -------------------------------------------------- ----------- ----------------------------------------- optimizer_dynamic_sampling integer 2 optimizer_features_enable string 10.2.0.4 optimizer_index_caching integer 0 optimizer_index_cost_adj integer 100 optimizer_mode string ALL_ROWS optimizer_secure_view_merging boolean TRUE show parameter db_file_multi; NAME TYPE VALUE -------------------------------------------------- ----------- ----------------------------------------- db_file_multiblock_read_count integer 16 show parameter db_block_size; NAME TYPE VALUE -------------------------------------------------- ----------- ----------------------------------------- db_file_multiblock_read_count integer 16 select sname, pname, pval1, pval2 from sys.aux_stats$; SNAME PNAME PVAL1 PVAL2 ------------------------------ ------------------------------ ---------------------- ------------------- SYSSTATS_INFO STATUS COMPLETED SYSSTATS_INFO DSTART 07-18-2006 23:19 SYSSTATS_INFO DSTOP 07-25-2006 23:19 SYSSTATS_INFO FLAGS 0 SYSSTATS_MAIN SREADTIM 5.918 SYSSTATS_MAIN MREADTIM 7.889 SYSSTATS_MAIN CPUSPEED 1383 SYSSTATS_MAIN MBRC 8 SYSSTATS_MAIN MAXTHR 1457152 SYSSTATS_MAIN SLAVETHR -1
For reference, the EXPLAIN PLAN when usingPLAN_TABLE_OUTPUT Plan hash value: 3781163428 ---------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | ---------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1352K| 771M| | 60042 (3)| 00:05:56 | |* 1 | HASH JOIN | | 1352K| 771M| 27M| 60042 (3)| 00:05:56 | |* 2 | INDEX FAST FULL SCAN| SYS_IOT_TOP_316310 | 1352K| 11M| | 1816 (4)| 00:00:11 | | 3 | TABLE ACCESS FULL | TABLE_A | 2190K| 1230M| | 32357 (4)| 00:03:12 | ---------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - access(""AB"".""MEDIA_FK""=""A"".""ID"") 2 - filter(""AB"".""CHANNEL_FK""=1 OR ""AB"".""CHANNEL_FK""=7) Note ----- - 'PLAN_TABLE' is old version
that runs in ~ 1 second is:... ab.channel_fk IN (6, 9, 170, 89);
Here is the output of SQL * Plus AUTOTRACE, including CALENDAR information:PLAN_TABLE_OUTPUT Plan hash value: 794334170 ---------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | ---------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 143K| 81M| | 58982 (3)| 00:05:50 | |* 1 | HASH JOIN | | 143K| 81M| 2952K| 58982 (3)| 00:05:50 | | 2 | INLIST ITERATOR | | | | | | | |* 3 | INDEX RANGE SCAN| C_M_INDEX | 143K| 1262K| | 1264 (1)| 00:00:08 | | 4 | TABLE ACCESS FULL| TABLE_A | 2190K| 1230M| | 32357 (4)| 00:03:12 | ---------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - access(""AB"".""MEDIA_FK""=""A"".""ID"") 3 - access(""AB"".""CHANNEL_FK""=6 OR ""AB"".""CHANNEL_FK""=9 OR ""AB"".""CHANNEL_FK""=89 OR ""AB"".""CHANNEL_FK""=170) Note ----- - 'PLAN_TABLE' is old version
The TKPROF output for that statement looks like the following:SQL> set autotrace traceonly arraysize 100; SQL> SELECT 2 a.* 3 FROM 4 table_a a 5 INNER JOIN table_a_b ab ON a.id = ab.media_fk 6 WHERE 7 ab.channel_fk IN (7, 1); 1336148 rows selected. Execution Plan ---------------------------------------------------------- Plan hash value: 3781163428 ---------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | ---------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1352K| 771M| | 60042 (3)| 00:05:56 | |* 1 | HASH JOIN | | 1352K| 771M| 27M| 60042 (3)| 00:05:56 | |* 2 | INDEX FAST FULL SCAN| SYS_IOT_TOP_316310 | 1352K| 11M| | 1816 (4)| 00:00:11 | | 3 | TABLE ACCESS FULL | TABLE_A | 2190K| 1230M| | 32357 (4)| 00:03:12 | ---------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - access("AB"."MEDIA_FK"="A"."ID") 2 - filter("AB"."CHANNEL_FK"=1 OR "AB"."CHANNEL_FK"=7) Note ----- - 'PLAN_TABLE' is old version Statistics ---------------------------------------------------------- 10586 recursive calls 0 db block gets 200457 consistent gets 408343 physical reads 0 redo size 498740848 bytes sent via SQL*Net to client 147371 bytes received via SQL*Net from client 13363 SQL*Net roundtrips to/from client 49 sorts (memory) 0 sorts (disk) 1336148 rows processed
DBMS_XPLAN. Output DISPLAY_CURSOR:TKPROF: Release 10.2.0.4.0 - Production on Mon Oct 1 12:23:21 2012 Copyright (c) 1982, 2007, Oracle. All rights reserved. Trace file: ..._ora_4896.trc Sort options: default ******************************************************************************** count = number of times OCI procedure was executed cpu = cpu time in seconds executing elapsed = elapsed time in seconds executing disk = number of physical reads of buffers from disk query = number of buffers gotten for consistent read current = number of buffers gotten in current mode (usually for update) rows = number of rows processed by the fetch or execute call ******************************************************************************** ALTER SYSTEM SET TIMED_STATISTICS = TRUE call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 1 0.00 0.00 0 0 0 0 Execute 1 0.00 0.03 0 0 0 0 Fetch 0 0.00 0.00 0 0 0 0 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 2 0.00 0.03 0 0 0 0 Misses in library cache during parse: 0 Parsing user id: 21 ******************************************************************************** SELECT a.* FROM table_a a INNER JOIN table_a_b ab ON a.id = ab.media_fk WHERE ab.channel_fk IN (7, 1) call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 1 0.01 0.00 0 0 0 0 Execute 1 0.00 0.00 0 0 0 0 Fetch 2 27.23 163.57 179906 198394 0 16 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 4 27.25 163.58 179906 198394 0 16 Misses in library cache during parse: 1 Optimizer mode: ALL_ROWS Parsing user id: 21 ******************************************************************************** OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 2 0.01 0.00 0 0 0 0 Execute 2 0.00 0.03 0 0 0 0 Fetch 2 27.23 163.57 179906 198394 0 16 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 6 27.25 163.62 179906 198394 0 16 Misses in library cache during parse: 1 OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 0 0.00 0.00 0 0 0 0 Execute 0 0.00 0.00 0 0 0 0 Fetch 0 0.00 0.00 0 0 0 0 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 0 0.00 0.00 0 0 0 0 Misses in library cache during parse: 0 2 user SQL statements in session. 0 internal SQL statements in session. 2 SQL statements in session. ******************************************************************************** Trace file: ..._ora_4896.trc Trace file compatibility: 10.01.00 Sort options: default 1 session in tracefile. 2 user SQL statements in trace file. 0 internal SQL statements in trace file. 2 SQL statements in trace file. 2 unique SQL statements in trace file. 46 lines in trace file. 187 elapsed seconds in trace file.
Thank you for reading I'm waiting for suggestions to improve the performance of this statement.select * from table(dbms_xplan.display_cursor('474frsqbc1n4d', null, 'ALLSTATS LAST')); PLAN_TABLE_OUTPUT SQL_ID 474frsqbc1n4d, child number 0 ------------------------------------- SELECT /*+ gather_plan_statistics */ c.* FROM table_a c INNER JOIN table_a_b ab ON c.id = ab.media_fk WHERE ab.channel_fk IN (7, 1) Plan hash value: 3781163428 --------------------------------------------------------------------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | Reads | Writes | OMem | 1Mem | Used-Mem | --------------------------------------------------------------------------------------------------------------------------------------------------- |* 1 | HASH JOIN | | 1 | 1352K| 1050 |00:00:40.93 | 198K| 182K| 209K| 29M| 5266K| 3320K (1)| |* 2 | INDEX FAST FULL SCAN| SYS_IOT_TOP_316310 | 1 | 1352K| 1336K|00:00:01.34 | 10874 | 0 | 0 | | | | | 3 | TABLE ACCESS FULL | TABLE_A | 1 | 2190K| 2267K|00:02:45.56 | 187K| 182K| 0 | | | | --------------------------------------------------------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - access(""AB"".""MEDIA_FK""=""C"".""ID"") 2 - filter((""AB"".""CHANNEL_FK""=1 OR ""AB"".""CHANNEL_FK""=7))
-----
H3. Backgroud
There are many years my company made decided to maintain many-to-many relationships in our database using pipe delimited fields. An example of field value:
Each delimited value refers to a unique "short" code TABLE_B (there is also a real digital foreign key to TABLE_B, which is what I use in the junction table). We are regularly using these columns with the next SQL style:'|ABC|XYZ|VTR|DVD|'
Appropriate indexes have been created over the years to make this process as soon a possible.... WHERE INSTR(pipedcolumn, '|ABC|') > 0 OR INSTR(pipedcolumn, '|XYZ|' > 0 ...
We now have an opportunity to correct some of these errors of design and implementation of junction tables to replace the current field. Before that, we have decided to take a copy of a database to a client with the largest set of records and test. I created a new junction table:
And the analysis on a pipe delimited field, populated by this new table.TABLE_A_B DDL: CREATE TABLE TABLE_A_B ( media_fk NUMBER, channel_fk NUMBER, PRIMARY KEY (media_fk, channel_fk), FOREIGN KEY (media_fk) REFERENCES TABLE_A (ID), FOREIGN KEY (channel_fk) REFERENCES TABLE_B (ID) ) ORGANIZATION INDEX COMPRESS; CREATE INDEX C_M_INDEX ON TABLE_A_B (channel_fk, media_fk) COMPRESS;
I then compared the performance of the following SQL:
When x, y, n are values that occur less frequently in the TABLE_A_B.CHANNEL_FK performance are comparable. However once the frequency of x, y, n increases, performance suffers. Here is a summary of the data CHANNEL_FK in TABLE_A_B:SELECT a.* FROM table_a a INNER JOIN table_a_b ab ON a.id = ab.media_fk WHERE ab.channel_fk IN (x, y, n); -- Can be Many Minutes --vs. SELECT a.* FROM table_a a WHERE INSTR(OWNERS,'|x|') >0 OR INSTR(OWNERS,'|y|') >0 OR INSTR(OWNERS,'|n|') >0; -- About 1 second seemingly regardless
I noticed that whenever I use any combination of values that occur over approximately 800 000 times (i.e. IN (7, 1) = 780741 + 555407 = 1336148) then I get performance problems.--SQL For Summary Data SELECT channel_fk, count(channel_fk) FROM table_a_b GROUP BY channel_fk ORDER BY COUNT(channel_fk) DESC; CHANNEL_FK COUNT(CHANNEL_FK) ---------------------- ---------------------- 7 780741 1 555407 2 422493 3 189493 169 144663 9 79457 6 53051 171 28401 170 19857 49 12603 ...
I find it very difficult to accept that the old pipe delimited fields are a better solution (without taking into account any other than this search criterion!).
Thank you for reading this far. I really look forward to suggestions on how to improve the performance of this statement.
Published by: user1950227 on October 1, 2012 12:06
Table of link renamed in DDL.davebcast wrote:
The following SQL statement has been identified as a bad performance. It takes ~ 160 seconds to run, but similar (indicated below first statement) SQL statements run in ~ 1 second.
Keep in mind that the enforcement timeframe has elapsed is a poor metric to use for benchmarking of SQL. The reason is that the same workload does not mean that the same elapsed execution time.
The workload for example shows a block of 1000 readings. There will be a difference marked by this workload reading data of the slow physical disks, or making this workload by reading data from memory in memory cache. And if it happens to be in memory or on disk is a kind of "random" thing (depends on many environment and factors of execution).
Thus, rather than measure the elapsed time and use it to compare, rather compare actual workloads. A workload of 500 block reading is faster and better than a block of 1000 DSL - despite the fact that a point of elapsed time can show the 500 read being slow (e/s physical) block a block of 1000 to read (e/s logic).
-
Performance problem on the SQL query that does not use the primary key index
Hello!
I have some performance issues on a single SQL query (Oracle 10 g).
I could solve the problem by using the INDEX indicator, but I would like to know WHY this is happening.
* Tables *.
create table jobs)
ID number (5) not null,
name varchar2 (100),
primary key constraint Job_PK (id)
)
/
-Record count: 298
create table Comp)
integer ID not null,
name varchar2 (100),
primary key constraint Comp_PK (id)
)
/
-Record count: 193
-Relation m: n
create table JobComp)
integer ID not null,
id_job integer not null,
id_comp integer not null,
primary key constraint JobComp_PK (id),
unique key constraint JobComp_UK (id_job, id_comp),
Constraint JobComp_FK_Job foreign key (id_job) refers to Job (id),
Constraint JobComp_FK_Comp foreign key (id_comp) makes reference Comp (id)
)
/
create index JobComp_IX_Comp on JobComp (Cod_Comp)
/
create index JobComp_IX_Job on JobComp (Cod_Job)
/
-Record count: 6431
* Ask *.
When I run this query, the execution plan shows the index using (JobComp_PK and JobComp_IX_Comp).
No problem.
Select JobComp.*
of JobComp
Join jobs
on Job.id = JobComp.id_job
where JobComp.id_comp = 134
/
-runs in 0.20 sec
But when I add the field 'name' of the work table the plan uses full access table to the table of work
Select JobComp.*, Job.name
of JobComp
Join jobs
on Job.id = JobComp.id_job
where JobComp.id_comp = 134
/
-runs in the 2.70 dry
With the help of the index
Select / * + INDEX (Job Job_PK) * /.
JobComp.*, Job.name
of JobComp
Join jobs
on Job.id = JobComp.id_job
where JobComp.id_comp = 134
/
-runs in 0.20 sec
* Doubt *.
This behavior is correct?
PS. : I tried to recalculate the statistics, but nothing changes:
analyze the job calculation table statistics.
/
change the statistical calculation of index Job_PK reconstruction;
/
Start
dbms_utility.analyze_schema (sys_context ('userenv', 'current_schema'), 'CALCULATE');
end;
/
[of]
Gustavo EhrhardtGus.EHR wrote:
Hello.
I'm sorry for the plan unformatted.
The execution time of the querys "without field name' and 'with the field name with suspicion" are equal.
He has no problem caching, because I get the plans of the sequence different from the querys and repeated the performance. The result is always the same.I don't think that there is no problem with oracle crossing LOOP IMBRIQUEE to the HASH JOIN when you include the field name and this should be the expected behavior. But it seems that your WORKING table has a degree of parallelism set against what is causing the query to run in parallel (as JOB table is now available with full table scan, instead of indexed access earlier). It could be that the parallel execution is contributor to extra Runtime.
(a) do you know why the degree of parallelism on the WORK table has been defined? Do you need it?You can see if the following query provides a better response time?
select /*+ NOPARALLEL(JOB) */ JobComp.*, Job.Name from JobComp join Job on Job.id = JobComp.id_job where JobComp.id_comp = 134
-
Using the cmdlet Get-stats for the problems of performance of ESXi
I need to detect the bottlenecks (if any) causing poor performance with a (free) 5.5 ESXi host.
I see that if I use the cmdlet Get - stat PowerCLI I get dozens of meters, such as "mem.usage.average" or "'rescpu.maxlimited1.latest ', just to give two samples. "
Can I identify a subset of the counters I should follow to identify possible bottlenecks in the fastest way possible?
Concerning
Marius
Everything depends of course.
There are several positions which list a number of key counters to watch.
The Hosts of ESXi monitoring - a deeper on the what and the why look , you will find a good starting set.
-
The operation cannot be performed because the "Firefox" element is in use.
Whenever I try to download the latest version of Firefox on my mac, I get the following error:
"The operation cannot be performed because the"Firefox"element is in use."
I close Firefox and still get this error. I tried this guy 100 times and may not know how to solve this problem. Help!
I have Mac OS X 10.6.8 v.
Download the full Firefox installation program and save the file to the desktop
https://www.Mozilla.org/en-us/Firefox/all.htmlIf he has problems with the update or with the permissions then best is to download the full version and trash the version currently installed to do a fresh install of the new version.
Download a new copy of the Firefox application and save the file to disk on the desktop image
- Firefox 33.0: https://www.mozilla.org/en-US/firefox/all.html
- Basket of the current application of Firefox (open the Applications folder in Finder and drag the Firefox application to the trash) to do a cleanup (re) install
- Install the new version you downloaded
- https://support.Mozilla.org/KB/installing+Firefox+on+Mac
Your personal data are stored in the Firefox profile folder, so you will not lose your bookmarks and other data to personal when you uninstall and (re) install Firefox.
-
Screen touch problems when you use the converter
We just bought an Envy 27 tilt to our Caravan for all the good characteristics that HP has and TV
Cause sometimes will want to run the HP converter 12v 400 watt true sine wave.
We tried this to find a problem, the computer functioned well but the touchscreen ran a muck and did not work as usual.
So after much googling and some reading I'd like here to answer fo HP.
As I can't believe, I'd be the first to come on this problem and want to put it all in one in a motor home.
What I read, it could be a matter of dirty power of the inveter, but we thought we have purchase the best brand true sine wave, we could leave our guys of battery here in Australia.
Any advice would be received with gratitude.
Thanks Lou, first of all for your time and on the other hand for your thoughts and advice.
We have it finally working outside a performance of the inverter with number.
But I have to say without any worthy of official telephone hotline support of HP.
Lou, I'm working through several of your suggestions, pending the official response to my survey on what brand or type of UPS or UPS I should use with my desire to tilt.
Well, it is very sad that a massive company like HP with what you would think would be a very large R & D service, cannot answer a simple question, like what type of UPS or UPS if they recommend to work with the touchscreen of the tilt.
The poor people, I was talking to, had no idea what I was talking about, or what I was trying to do. How a computer call center peason knows not what a UPS, I can understand on an inverter, but the tech people, these are things really very similar in the different boxes.
OK, if you have this problem with your inverter and touch screen, first of all not all inverters are equal even in the same brand that I discovered. I want to thank my provider inverter & battery for their time and for allowing me to put in place the HP Envy of tilt on the back of their store and try different UPSs, inverters and batteries.
I'll talk about brands here, not rat on the brand, but as it may be useful to someone else in Australia in the future. It seems that my "Epower DCAC 400w 12v true sine inverter" wasn't at the height when it came to clean AC power required to operate the touch screen without problem.
In the end, we tried a "Epower DCAC 1000w true Sine Wave 12v', really just to give it a go, thinking it would be a better to be the same brand as the unit of 400w, well it worked quite OK
This unit of true sine wave Epower 12 v 1000w, fixed our problem with touchscreen and ran HP Envy tilt as if it is running on AC power.
If anyone is interested for camper here, I found this configuration to draw between 4 and 5 amperes of batteries of 12v and about 41 Watts @ runing 240 volts a you tube clip.
Well it is my experiences and the final result, I hope this helps someone else in the future, I'm sure that HP will not be able to.
Thank you all.
-
Perform a sequence using the new method of execution
Hi ppl,
I use the Engine.NewExecution method in LabVIEW to perform a sequence using sequential process model. I have been successful in this attempt.
Now when I tried to pass arguments to the sequence with this method I could not do
From the help file, I found to pass property to the sequenceArgsParam in the Engine.NewExecution. I used the Engine.NewPropertyObject to create a new property object. My problem started here. I was not able to define the parameters for the property object I created. When I created an object of type container property, newExecuion method returned an error indicating that the type is the string even if the setting for my sequence was a container. When I created a method of setValString string property object returned error saying unable to find settings where the look of string upward was parameters.x
Please help me some body. I'm stuck with this upward. can someone give me an example of program that passes parameters to the sequence when running via the NewExecution method.
Hello
It is not the Engine.NewPropertyObject method to pass parameters
I used to sequence method before running the sequence
try to replace the step Engine.NewExecution of this VI
the values are in a cluster table: parameter is the name of the parameter in your sequence, the value is the value to pass
A2
Note 1: there is only the string in this VI, it is possible to change with integer...
Note 2: If you have a container, the parameter name is "container". "" The name of the parameter.
-
I upgraded to 10 Windows on a laptop ASUS, then updated the software for a HP Officejet 6500 E709n Series printer HP solutions Center.
I can print successfully to the printer but when I open the solution Center and then try to scan an image or a Document, I get the following error "Scan cannot be performed because another program or computer using the networked imaging device.
Extended error information is 8, [(0.18,-2147467259)]
When I look in device under imaging devices Manager, two devices are displayed ASUS USB2.0 WebCam (1) and (2) Officejet 6500 E709n.
It would be much appreciated if someone could help me solve this problem.
Hi midnight-anwrs,.
Thanks for getting back to me.
I looked into your link "Printer problems after upgrade to Windows 10" and 6 "Scan with a scanning application" stage, I found the solution.
I downloaded the "HP Scan and capture App" and can now easily scan photos and documents.
Thanks for your help.
Much appreciated,
KenRabs
-
Original title: non-functional computer
my vista computer has ceased to be able to print or use the windows photo gallery, or to be able to run updates and I can't find any way to put this right - someone had something similar - it custom install service pack 2 for vista and it wont let me download a update Internet explorer 9 - also stop the program index - continues and the print spooler said it works but it doesn't will not print - any ideas?
Hi John,.
1. you receive messages or error codes when you try to print or to use the Windows Photo Gallery?
2. What is the code of error or message that you receive when you try to install service pack 2 and Internet Explorer 9 download?
3 did you recent hardware or changes to the software of the system?
You try to perform a restore of the system to a restore point before you have been affected by the problem and check.
Note: When you perform the system restore to restore the computer to a previous state, programs and updates that you have installed are removed.
To run the system restore, you can consult the following articles:
Maybe you are looking for
-
Display recent emails on iphone problem
I have access to my account hotmail via the Mail app on my iPhone 5s. My e-mails are updated manually and when I updated the mail app today, I can only show emails from June-July 2010. I've never had this problem before, and I checked that the softwa
-
I have a phone that was given to me from my father-in-law, it's a phone of one of his former employees that was great in the office. We had no password information, so we tried to reset the phone to wipe and start over. This just finished sending us
-
Re: Where can I buy a new screen for Satellite A200 - 1 k 8?
Hello world I would like to know if it is possible to buy a new screen (across the top in fact) for a Satellite A200 - 1 k 8 and where? I'm unable to find information on the Toshiba site, so maybe you can help. ;)
-
I have an Acer Aspire 5633 wlmi and have a memory stick which needs exfat to run how can I download exfat on my laptop that has installed fat 32. HELP regards Bob.
-
Application of system recovery
Hello! I intend to reinstall windows 7 Starter on my netbook: HP Mini 311 I have 3 partitions of hard disk: C: (where is installed the win7) D: (recovery partition) E: (I created this partition for documents and files) I just want to make sure that i