Parallel Execution and disk affinity on MPP

Hello,
In Chapter 25 Using Parallel Execution
Oracle® Database Data Warehousing Guide
10g Release 2 (10.2)
Part Number B14223-02
There is a very short quote "Additionally, Oracle Database considers the disk affinity of the granules on MPP systems to take advantage of the physical proximity between parallel execution servers and disks."
I understand the benefits but :
- I'm wondering what it really means ?
- How it can work ?
- How to demonstrate, show this phenomenon ?
Best Regards,
Gregory

Hi Vency,
Try posting this in the following forum:
General Database Discussions
Thanks, Mark

Similar Messages

  • Parallel Execution and Partitioning ?

    Hi,
    Can anybody explain me -- "How to implement Parallel execution and Partitioning in Data Warehouse?" on a single server.
    Any examples related to implement Parallel Execution helps me a lot.
    Thanks in Advance,
    -Vency

    Hi Vency,
    Try posting this in the following forum:
    General Database Discussions
    Thanks, Mark

  • Parallel execution and temporary tablespaces

    I have a large long running (1 hour) data warehouse query in a materialized view.
    If I parallelize it using the parallel hint then I run out of temporary tablespace.
    I've tried creating a bunch of temporary tablespaces and putting them into a temp tablespace group but it still runs out of space. Parallel execution seems to use up way more temp tablespace than sequential execution.
    I know it is a very general question, but what are the tips for parallelizing a long running query with respect to temporary tablespace management?
    I've tried searching on the interwebs but I don't find anything that addresses this particular issue.

    And here is the parallel explain plan:
    PLAN_TABLE_OUTPUT
    Plan hash value: 1293981491
    | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | TQ |IN-OUT| PQ Distrib |
    | 0 | SELECT STATEMENT | | 81M| 17G| | 19232 (2)| 00:00:01 | | | |
    | 1 | TABLE ACCESS BY INDEX ROWID | MART$SC_SCORES | 1 | 13 | | 3 (0)| 00:00:01 | | | |
    |* 2 | INDEX UNIQUE SCAN | SSCS_SDCC_FK_I | 1 | | | 2 (0)| 00:00:01 | | | |
    | 3 | PX COORDINATOR | | | | | | | | | |
    | 4 | PX SEND QC (RANDOM) | :TQ10017 | 81M| 17G| | 19232 (2)| 00:00:01 | Q1,17 | P->S | QC (RAND) |
    |* 5 | HASH JOIN RIGHT OUTER BUFFERED | | 81M| 17G| | 19232 (2)| 00:00:01 | Q1,17 | PCWP | |
    | 6 | PX RECEIVE | | 41925 | 491K| | 2 (0)| 00:00:01 | Q1,17 | PCWP | |
    | 7 | PX SEND BROADCAST | :TQ10014 | 41925 | 491K| | 2 (0)| 00:00:01 | Q1,14 | P->P | BROADCAST |
    | 8 | PX BLOCK ITERATOR | | 41925 | 491K| | 2 (0)| 00:00:01 | Q1,14 | PCWC | |
    | 9 | INDEX FAST FULL SCAN | I_DWH_ZIP_ZIPCODE_EIDIID | 41925 | 491K| | 2 (0)| 00:00:01 | Q1,14 | PCWP | |
    |* 10 | HASH JOIN | | 81M| 16G| | 19218 (2)| 00:00:01 | Q1,17 | PCWP | |
    | 11 | JOIN FILTER CREATE | :BF0000 | 6414K| 159M| | 806 (2)| 00:00:01 | Q1,17 | PCWP | |
    | 12 | PX RECEIVE | | 6414K| 159M| | 806 (2)| 00:00:01 | Q1,17 | PCWP | |
    | 13 | PX SEND HASH | :TQ10015 | 6414K| 159M| | 806 (2)| 00:00:01 | Q1,15 | P->P | HASH |
    | 14 | PX BLOCK ITERATOR | | 6414K| 159M| | 806 (2)| 00:00:01 | Q1,15 | PCWC | |
    |* 15 | INDEX FAST FULL SCAN | I_DWH_ADDRESS_COMB_ZIP | 6414K| 159M| | 806 (2)| 00:00:01 | Q1,15 | PCWP | |
    | 16 | PX RECEIVE | | 80M| 14G| | 18397 (2)| 00:00:01 | Q1,17 | PCWP | |
    | 17 | PX SEND HASH | :TQ10016 | 80M| 14G| | 18397 (2)| 00:00:01 | Q1,16 | P->P | HASH |
    | 18 | JOIN FILTER USE | :BF0000 | 80M| 14G| | 18397 (2)| 00:00:01 | Q1,16 | PCWP | |
    |* 19 | HASH JOIN RIGHT OUTER BUFFERED | | 80M| 14G| | 18397 (2)| 00:00:01 | Q1,16 | PCWP | |
    | 20 | PX RECEIVE | | 42M| 409M| | 827 (2)| 00:00:01 | Q1,16 | PCWP | |
    | 21 | PX SEND HASH | :TQ10012 | 42M| 409M| | 827 (2)| 00:00:01 | Q1,12 | P->P | HASH |
    | 22 | PX BLOCK ITERATOR | | 42M| 409M| | 827 (2)| 00:00:01 | Q1,12 | PCWC | |
    | 23 | MAT_VIEW ACCESS FULL | MBI$CMN_ACTION_COST | 42M| 409M| | 827 (2)| 00:00:01 | Q1,12 | PCWP | |
    | 24 | PX RECEIVE | | 80M| 14G| | 17549 (1)| 00:00:01 | Q1,16 | PCWP | |
    | 25 | PX SEND HASH | :TQ10013 | 80M| 14G| | 17549 (1)| 00:00:01 | Q1,13 | P->P | HASH |
    |* 26 | HASH JOIN BUFFERED | | 80M| 14G| | 17549 (1)| 00:00:01 | Q1,13 | PCWP | |
    | 27 | PX RECEIVE | | 6312K| 794M| | 7519 (1)| 00:00:01 | Q1,13 | PCWP | |
    | 28 | PX SEND HASH | :TQ10010 | 6312K| 794M| | 7519 (1)| 00:00:01 | Q1,10 | P->P | HASH |
    |* 29 | HASH JOIN RIGHT OUTER BUFFERED | | 6312K| 794M| | 7519 (1)| 00:00:01 | Q1,10 | PCWP | |
    | 30 | VIEW | | 4443K| 80M| | 2125 (2)| 00:00:01 | Q1,10 | PCWP | |
    | 31 | HASH GROUP BY | | 4443K| 33M| 158M| 2125 (2)| 00:00:01 | Q1,10 | PCWP | |
    | 32 | PX RECEIVE | | 10M| 78M| | 950 (1)| 00:00:01 | Q1,10 | PCWP | |
    | 33 | PX SEND HASH | :TQ10007 | 10M| 78M| | 950 (1)| 00:00:01 | Q1,07 | P->P | HASH |
    | 34 | PX BLOCK ITERATOR | | 10M| 78M| | 950 (1)| 00:00:01 | Q1,07 | PCWC | |
    | 35 | TABLE ACCESS FULL | DWH$PHONE | 10M| 78M| | 950 (1)| 00:00:01 | Q1,07 | PCWP | |
    |* 36 | HASH JOIN | | 6312K| 680M| | 5392 (1)| 00:00:01 | Q1,10 | PCWP | |
    | 37 | PX RECEIVE | | 6329K| 36M| | 130 (2)| 00:00:01 | Q1,10 | PCWP | |
    | 38 | PX SEND HASH | :TQ10008 | 6329K| 36M| | 130 (2)| 00:00:01 | Q1,08 | P->P | HASH |
    | 39 | PX BLOCK ITERATOR | | 6329K| 36M| | 130 (2)| 00:00:01 | Q1,08 | PCWC | |
    | 40 | INDEX FAST FULL SCAN | PK_DWH_DEBTOR | 6329K| 36M| | 130 (2)| 00:00:01 | Q1,08 | PCWP | |
    | 41 | PX RECEIVE | | 6312K| 644M| | 5259 (1)| 00:00:01 | Q1,10 | PCWP | |
    | 42 | PX SEND HASH | :TQ10009 | 6312K| 644M| | 5259 (1)| 00:00:01 | Q1,09 | P->P | HASH |
    |* 43 | HASH JOIN RIGHT OUTER BUFFERED| | 6312K| 644M| | 5259 (1)| 00:00:01 | Q1,09 | PCWP | |
    | 44 | PX RECEIVE | | 3689K| 31M| | 4271 (1)| 00:00:01 | Q1,09 | PCWP | |
    | 45 | PX SEND HASH | :TQ10005 | 3689K| 31M| | 4271 (1)| 00:00:01 | Q1,05 | P->P | HASH |
    | 46 | VIEW | | 3689K| 31M| | 4271 (1)| 00:00:01 | Q1,05 | PCWP | |
    | 47 | HASH GROUP BY | | 3689K| 56M| 84M| 4271 (1)| 00:00:01 | Q1,05 | PCWP | |
    | 48 | PX RECEIVE | | 3689K| 56M| | 3653 (1)| 00:00:01 | Q1,05 | PCWP | |
    | 49 | PX SEND HASH | :TQ10003 | 3689K| 56M| | 3653 (1)| 00:00:01 | Q1,03 | P->P | HASH |
    |* 50 | HASH JOIN | | 3689K| 56M| | 3653 (1)| 00:00:01 | Q1,03 | PCWP | |
    | 51 | BUFFER SORT | | | | | | | Q1,03 | PCWC | |
    | 52 | PX RECEIVE | | 3 | 21 | | 1 (0)| 00:00:01 | Q1,03 | PCWP | |
    | 53 | PX SEND BROADCAST | :TQ10000 | 3 | 21 | | 1 (0)| 00:00:01 | | S->P | BROADCAST |
    | 54 | INLIST ITERATOR | | | | | | | | | |
    |* 55 | INDEX RANGE SCAN | I_DWH_PAYMENT_TYPE_EIDIID | 3 | 21 | | 1 (0)| 00:00:01 | | | |
    | 56 | PX BLOCK ITERATOR | | 28M| 242M| | 3648 (1)| 00:00:01 | Q1,03 | PCWC | |
    |* 57 | TABLE ACCESS FULL | DWH$PAYMENT | 28M| 242M| | 3648 (1)| 00:00:01 | Q1,03 | PCWP | |
    | 58 | PX RECEIVE | | 6312K| 589M| | 986 (2)| 00:00:01 | Q1,09 | PCWP | |
    | 59 | PX SEND HASH | :TQ10006 | 6312K| 589M| | 986 (2)| 00:00:01 | Q1,06 | P->P | HASH |
    |* 60 | HASH JOIN | | 6312K| 589M| | 986 (2)| 00:00:01 | Q1,06 | PCWP | |
    | 61 | PX RECEIVE | | 2937 | 172K| | 5 (20)| 00:00:01 | Q1,06 | PCWP | |
    | 62 | PX SEND BROADCAST | :TQ10004 | 2937 | 172K| | 5 (20)| 00:00:01 | Q1,04 | P->P | BROADCAST |
    |* 63 | HASH JOIN BUFFERED | | 2937 | 172K| | 5 (20)| 00:00:01 | Q1,04 | PCWP | |
    | 64 | PX RECEIVE | | 220 | 1540 | | 2 (0)| 00:00:01 | Q1,04 | PCWP | |
    | 65 | PX SEND HASH | :TQ10001 | 220 | 1540 | | 2 (0)| 00:00:01 | Q1,01 | P->P | HASH |
    | 66 | PX BLOCK ITERATOR | | 220 | 1540 | | 2 (0)| 00:00:01 | Q1,01 | PCWC | |
    | 67 | TABLE ACCESS FULL | DWH$MANDATOR | 220 | 1540 | | 2 (0)| 00:00:01 | Q1,01 | PCWP | |
    | 68 | PX RECEIVE | | 2937 | 152K| | 2 (0)| 00:00:01 | Q1,04 | PCWP | |
    | 69 | PX SEND HASH | :TQ10002 | 2937 | 152K| | 2 (0)| 00:00:01 | Q1,02 | P->P | HASH |
    | 70 | PX BLOCK ITERATOR | | 2937 | 152K| | 2 (0)| 00:00:01 | Q1,02 | PCWC | |
    | 71 | TABLE ACCESS FULL | DWH$PACKAGE | 2937 | 152K| | 2 (0)| 00:00:01 | Q1,02 | PCWP | |
    | 72 | PX BLOCK ITERATOR | | 6312K| 228M| | 980 (1)| 00:00:01 | Q1,06 | PCWC | |
    | 73 | TABLE ACCESS FULL | DWH$CASE | 6312K| 228M| | 980 (1)| 00:00:01 | Q1,06 | PCWP | |
    | 74 | PX RECEIVE | | 78M| 4199M| | 10016 (1)| 00:00:01 | Q1,13 | PCWP | |
    | 75 | PX SEND HASH | :TQ10011 | 78M| 4199M| | 10016 (1)| 00:00:01 | Q1,11 | P->P | HASH |
    | 76 | PX BLOCK ITERATOR | | 78M| 4199M| | 10016 (1)| 00:00:01 | Q1,11 | PCWC | |
    |* 77 | TABLE ACCESS FULL | DWH$ACTION | 78M| 4199M| | 10016 (1)| 00:00:01 | Q1,11 | PCWP | |
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------

  • Parallel executions on AIX

    Hi,
    9.2 AIX5.3
    Since I enabled parallel executions, and table monitoring there are performance issues while database (warehouse) is loaded (sqlldr) .
    The LRUD root process gets active and maxes up the CPU to extend that performance is trashed.
    The process is active even after all db activities are gone.
    Is there something that could be done from db side to tune-accommodate the AIX behavior?
    The only solution so far is to disable the parallel executions that I'm reluctant to do.
    Thx,

    Greg Rahn wrote:
    If LRUD is consuming lots of CPU and there is also a high paging rate, it would seem to point to an issue with the VMM file cache. Are you using direct I/O? Not doing so, while using PQ would cause the VMM file cache to be flooded with I/O requests from all the PQ slaves thus resulting in a high CPU usage for LRUD. Direct I/O allows I/O to bypass the VMM and eliminates LRUD from having to do any work at all - it bypasses this code path. This is a necessity while using PQ (as well as a recommendation in the Oracle docs).
    Greg,
    I was going to say "concurrent I/O" rather than "direct I/O" - but either way it looks like there's a load of memory being used for the filesystem cache when bypassing the cache and letting Oracle use the memory seems to be the obvious bet.
    Nemohm
    Could you supply a little more precise about your comments:
    The LRUD root process gets active and maxes up the CPU to extend that performance is trashed.
    The process is active even after all db activities are gone.When you say "after all db activities are gone" - do you mean just the heavy duty loader activity is complete, or has all activity from all other users stopped as well; and is this only during and directly after a loader session, or does it happen at other times when parallel queries are going on; and how long does it take before the LRU daemon calms down ? How many CPUs do you have, by the way ?
    As Greg points out - parallel execution can result in a very heavy demand for I/O requests that bypass Oracle's own cache - this means that data that could have been thrashed through Oracle's cache when you run serially is suddenly thrashed through the filesystem cache (if hasn't been bypassed). Moreover, parallel execution often does things that put a heaavy load on the PGA memory - which could cause lots of (OS) memory pages to be reclaimed from the filesystem cache so that they can be used by Oracle processes in their PGA heaps.
    In general: if you've got memory set it up so that Oracle can use it effectively - leaving it for the filesystem cache can help in some cases, but avoiding the filesystem cache is often the better bet.
    Regards
    Jonathan Lewis
    http://jonathanlewis.wordpress.com
    http://www.jlcomp.demon.co.uk
    "Science is more than a body of knowledge; it is a way of thinking" Carl Sagan

  • Parallels and disk utility problem

    ok i have parallels installed and using the boot camp partition, however the disk utility keeps changing the disk id (e.g. disk2s2) and everytime this has happens I need to edit the pvs file. Now this is a real ball ache. Can anyone tell me if there is a way of making mac os x disk utility keep the same disk id the same everytime i boot up?
    Message was edited by: sam1974

    cheers for the reply, however I did not create a boot camp partition on the 300gb drive I wish I had now) but simply installed windows XP onto it.
    here is a screen capture of the DU:
    http://i288.photobucket.com/albums/ll190/bobotheclown_gti/du.png
    As you can see it currently says the 300gb WD is disk0s2, however yesterday it was disk1s2. Strange. Is there anyway of making OS X keep the disk id the same everytime I boot up?

  • How should i allocate the right RAM and disk space to windows through boot camp or parallels ?

    i am trying to understand how you need to set things up when trying to run windows from a mac ( using bootcamp / parallels ). i want to understand the implications around RAM.
    i have a mac with 1terra SSD and 16 GB of RAM, and if i want to install windows i need to partition and allocate memory and disk space for windows.
    now i would be running on windows :
    cad 2015
    revit / rhino
    photoshop and some other graphic softwares
    so my questions are:
    how do i decide how much space should be allocated to windows and once i decide that, can i change it later ?
    how do i decide what RAM should be allocated to windows. and can i also change that in the future ?
    now lets say i allocated 8 GB of RAM for winddows using bootcamp, does that mean that every time i log into my mac through OS, it will only be using 8GB of the total RAM ?
    here's my last question : i have my parallels software yet to be installed, just as the windows 8 software. now should i use bootcamp to install windows ? could i install windows using parallels ? if yes which is better to use ?

    oliverfrombeirut wrote:
    so my questions are:
    how do i decide how much space should be allocated to windows and once i decide that, can i change it later ?
    how do i decide what RAM should be allocated to windows. and can i also change that in the future ?
    now lets say i allocated 8 GB of RAM for winddows using bootcamp, does that mean that every time i log into my mac through OS, it will only be using 8GB of the total RAM ?
    here's my last question : i have my parallels software yet to be installed, just as the windows 8 software. now should i use bootcamp to install windows ? could i install windows using parallels ? if yes which is better to use ?
    1. Windows needs 60GB for good performance, add the needs of the apps you intend to use and I would say no less than 100GB. (it can be changed later but it is not an easy task unless you pay for Camp Tune)
    2. You do not allocate Ram to Windows in Boot Camp. Windows will use all of it (64bit Windows) or 4GB (32bit Windows)
    3. See 2
    4. Use Boot Camp, Parallels will not allow Windows to run at full speed.
    General Notes:
    1. Make a complete backup of your Mac before you start! (do not skip this)
    2. Read the Boot Camp directions, then read them again.

  • How to pass parameters between main and sub vi during parallel execution using the VI server technique?

    Hello All,
    I am working with the following example (from previous postings on this
    board) that demonstrates how to run a sub vi in parallel with the main
    vi.  I'd like to pass parameters between the main and sub such as
    the control (delay) and indicator (value) parameters of my subvi
    example.  Does any one know how to do this?  Parallel
    execution is important for me, I cannot just paste the subvi icon into
    my main diagram (two nested while loops...)
    Many thanks,
    Luis
    Message Edited by cascao on 08-16-2005 08:42 PM
    Message Edited by cascao on 08-16-2005 08:42 PM
    Attachments:
    VI_Server_technique.vi ‏32 KB
    SubVI_1.vi ‏19 KB

    cascao wrote:
    Hello All,
    I am working with the following example (from previous postings on this
    board) that demonstrates how to run a sub vi in parallel with the main
    vi.  I'd like to pass parameters between the main and sub such as
    the control (delay) and indicator (value) parameters of my subvi
    example.  Does any one know how to do this?  Parallel
    execution is important for me, I cannot just paste the subvi icon into
    my main diagram (two nested while loops...)
    Many thanks,
    Luis
    Luis, you can use the VI Server methods 'Set Control Value' and 'Get Control Value', as demonstrated in the attached examples.
    -Franz
    Attachments:
    VI Server.zip ‏26 KB

  • Parallel Execution  against Normal Execution

    Hi,
    Can someone explain why in this case Serial Execution is faster although enabling parallel dml at session level , What are the possibilities to improve speed of executoin for parallel execution as i need to populate for 139 stores data having around half a million rows for each store , i will have to run a cursor on the distinct value of store to achieve this , just to test i got the following Results , can anyoe guide where i am going Wrong?
    This is the Script
    set timing on
    insert into r8_win_store
    select * from win_store@rms8 where store=99;
    commit;
    alter session enable parallel dml;
    insert /*+ Parallel(t,8) */ into r8_win_store t
    select /*+ parallel(e,8)*/ * from win_store@rms8 e where e.store=99;
    commit;
    alter session disable parallel dml;
    OUtput
    SQL> @test1.sql
    299666 rows created.
    Elapsed: 00:03:48.12
    Commit complete.
    Elapsed: 00:00:00.01
    Session altered.
    Elapsed: 00:00:00.00
    299666 rows created.
    Elapsed: 00:08:02.81
    Commit complete.
    Elapsed: 00:00:01.31
    Session altered.
    Elapsed: 00:00:00.00

    Parallel processing in Oracle is intended to reduce I/O latency. When you tell the kernel to do an I/O, you need to wait for that call to complete - disk platters to spin, disk controller heads to move, etc.
    If you need to make a bunch of I/O calls after one another, you will spend up to 90% of the elapsed time waiting for that I/O to actually put the data into your buffer to process.
    Now imagine doing a million I/Os.. and 90% of the time spend waiting for I/O to complete. A big performance knock and a frustrating one - as you cannot make that actual I/O any faster. It is simply slow. The slowest operation you can do on the computer and you're doing a million of them.
    Parallel processing in Oracle addresses this problem. There can be sufficient I/O bandwidth to make a 100 I/O calls per second. But your process that does an I/O call, wait, process, and does an I/O call, wait, process, can only reach a speed of 10 I/O calls per second.
    Which means 90% of the I/O pipe is free to do I/O in parallel. So instead of a single process doing that million I/Os (using 10% I/O bandwidth/thruput), Oracle spawns 10 process each doing a 100K I/Os each - thus making better use of the I/O thruput.
    So Oracle PQ is useless if you scan small volumes of data - it is intended for large volumes of data. There are overheads in PQ as the parallel processes have to be coordinated in order to work together. When each only needs to do 10 I/Os, the time spend on coordination alone can be more than what the time would have been to simply do a 100 I/Os using a single process.
    It is also a fallacy that number of CPUs determine the just how many parallel processes you can start. The real determining factor is the load you can put on your I/O subsystem.
    Bottom line is that PQ is nothing "special" or "magic". It is simply a method to reduce I/O latency by performing parallel I/O. And it is only sensible to use when the amount of I/O to be done warrants parallel processing.
    Oh yeah - and the CBO is very capable in deciding when to use PQ and not. So rather than force PQ down the CBO's throat using the PARALLEL clause and hardcoding the degrees and instances, it should rather make those decisions (as informed decisions) itself. Which means using the PARALLEL clause on tables and not as SQL hints. The DBA can easily tune that by altering the PARALLEL clause if a table.. The DBA cannot by any means do the same thing when dealing with SQLs that insists on a specific number of PQ processes on a specific number of instances.

  • 11g Parallel Execution on AIX 6 - SMT Enabled or Disabled?

    Greetings,
    I've had no luck searching for an answer to this question and I'm hoping someone can answer it:
    Can Oracle 11g Parallel Execution spread the "granules" of paralllism across the threads (logical cpus) in an AIX SMT enabled environment, or should SMT be disabled and the "granules" be spread scross the processors (virtual cpus)? The application is a data warehouse in a non-RAC configuration using a p570 server. From what I've read, the server must be SMP for Oracle parallel execution capabilities to be maximized, but I think all AIX servers are SMP (not sure if the server needs to be ordered as an SMP server). I'm mostly concerned with the data load processing at this point, and not so concerned for the query right now. I believe AIX 6.1 can enable/disable SMT dynamically. So would it make sense to disable during data loads, and enable for DSS query?
    Hope the question makes sense. Thanks for any help in advance!

    SMT will determine Oracle's cpu_count parameter.
    However this is a static parameter.
    So it won't work, and it might be even dangerous to change it on the fly.
    Sybrand Bakker
    Senior Oracle DBA
    Experts: those who did read documentation.

  • How to run multiple CodedUI Ordered Tests over multiple Test Agents for parallel execution using Test Controller

    we are using VS 2013, I need to run multiple Coded UI Ordered Tests in parallel on different agents.
    My requirement :
    Example:   I have 40 Coded UI Test scripts in single solution/project. i want to run in different OS environments(example 5 OS ).  I have created 5 Ordered tests with the same 40 test cases. 
    I have one Controller machine and 5 test agent machines. Now I want my tests to be distributed in a way that every agent gets 1 Ordered test to execute. 
    Machine_C = Controller (Controls Machine_1,2,3,4,5)
    Machine_1 = Test Agent 1 (Should execute Ordered Test 1 (ex: OS - WIN 7) )
    Machine_2 = Test Agent 2 (Should execute Ordered Test 2 (ex:
    OS - WIN 8) )
    Machine_3 = Test Agent 3 (Should execute Ordered Test 3
    (ex: OS - WIN 2008 server)  )
    Machine_4 = Test Agent 4 (Should execute Ordered Test 4 (ex:
    OS - WIN 2012 server) )
    Machine_5 = Test Agent 5 (Should execute Ordered Test 5 (ex:
    OS - WIN 2003 server) )
    I have changed the  “MinimumTestsPerAgent” app setting value
    as '1' in controller’s configuration file (QTController.exe.config).
    When I run the Ordered tests from the test explorer all Test agent running with each Ordered test and showing the status as running. but with in the 5 Test Agents only 2 Agents executing the test cases remaining all 3 agents not executing the test cases but
    status showing as 'running' still for long time (exp: More then 3 hr) after that all so  its not responding. 
    I need to know how I can configure my controller or how I can tell it to execute these tests in parallel on different test agents. This will help me reducing the script execution time. 
     I am not sure what steps I am missing. 
    It will be of great help if someone can guide me how this can be achieved.
    -- > One more thing Can I Run one Coded UI Ordered Test on One Specific Test Agent?
    ex: Need to run ordered Test 1 in Win 7 OS (Test Agent 1) only.
    Thanks in Advance.

    Hi Divakar,
    Thank you for posting in MSDN forum.
    As far as I know, we cannot specify coded UI ordered test run on specific test agent. And it is mainly that test controller determine which coded UI ordered test assign to which test agent.
    Generally, I know that if we want to run multiple CodedUI Ordered Tests over multiple Test Agents for parallel execution using Test Controller.
    We will need to change the MinimumTestsPerAgent property to 1 in the test controller configuration file (QTControllerConfig.exe.config) as you said.
    And then we will need to change the bucketSize number of tests/number of machines in the test settings.
    For more information about how to set this bucketSize value, please refer the following blog.
    http://blogs.msdn.com/b/aseemb/archive/2010/08/11/how-to-run-automated-tests-on-different-machines-in-parallel.aspx
    You can refer this Jack's suggestion to run your coded UI ordered test in lab Environment or load test.
    https://social.msdn.microsoft.com/Forums/vstudio/en-US/661e73da-5a08-4c9b-8e5a-fc08c5962783/run-different-codedui-tests-simultaneously-on-different-test-agents-from-a-single-test-controller?forum=vstest
    Best Regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Parallel execution of Mat script in Labview

    Hi All
    I have an application where I am using MatLAB program to simulate 3D image simulation for vibration data. In this we are using two Mat Script call in two instances which are running parallel.  
    The issue observed is MatLAB scripts which am running parallel are not working simultaneously any one is working at any time. When I call MatLAB script for second time, Mat script which is already executing stops execution and second instance gets executes.
    What I have to do to execute 2 MatLAB scripts simultaneously in LABView.
    Regards
    Devender T

    I'm not a Matlab experts, but as far as I know, Matlab doesn't allow you to run scripts in parallel, so this is a Matlab limitation, not a LabVIEW one. You could look into using the Parallel Computing Toolbox for Matlab, though I think its intention is to target multiple cores, rather than multiple threads.
    You may need to pursue this in the Matlab forums.

  • Parallel execution of multiple scripts

    Hi All,
    I understand that by using parallel hint we can achieve parallel execution of the queries(insert/update/delete).
    For my today's question I would like know if Parallelism can be achieved for the following scenario.
    I have a script with an insert-select statement and multiple merge statements and few update statements all on the same table.
    I have to run this script 12 times on the same table, once for each month of the year.
    Currently we run for Jan (where record_date = '201001') commit it, and then run for Feb, and so on.
    Can all the 12 month be run in parallel. One way I can think of is create 12 different scripts and kick them of by opening 12 different SQL Plus sessions (all on the same table).
    Is there a better way of doing this ?
    Note: each month data will not effect the other other month data.
    Regards,
    Aj

    Creating 12 different scripts would be a sub-optimal solution, and a maintenance nightmare. Creating 1 parametrized script and call that 12 times with different parameters would be slightly better.
    Creating 1 stored procedure with parameters, and run that procedure in the scheduler 12 times would still be better, as everything runs at the server side only.
    Your description is deliberately vague, so the possibility of deadlock can not be excluded.
    Sybrand Bakker
    Senior Oracle DBA

  • Parallel Execution questions

    Hi everyone, i have few questions about Parallel Execution.
    1- Query Coordinator to scan the table, split up the table to the processes. But, each process take different number of rows. For example, in oracle 10g database architecture, thomas kyte gave an example:
    "SELECT COUNT(*) FROM BIG_TABLE"
    It is distributed to 4 processes. One process take 1000 rows, another process 1200 etc. Why this is not equal? How the number of rows is determined by the QC?
    2- If we do not determine the degree of parallelism ( /*+ PARALLEL(B) */ instead of /*+ PARALLEL(B,16) */ ) how the cbo determine the degree of parallelism?
    3- in the explain plan i see lots of thing i do not know. For example :
    :TQ10000
    what is that?
    -> TQ, IN-OUT, PQ_Disturb columns?
    thanks for responses.

    Hi
    Why this is not equal? How the number of rows is determined by the QC?The number of rows is not used to split the table. Data is split in granules and distributed to the slave processed based on two methods:
    - partition granules: a whole partition is given to a specific slave process
    - block range granules: range of blocks are given to each slave process
    So, depending on the size of the granules, one slave process might process much more data than another.
    If we do not determine the degree of parallelism how the cbo determine
    the degree of parallelism?It depends on the configuration. In fact, there is a default at session level, at system level and at table level. Depending which ones are set, a DOP is chosen. In addition, the DOP might be decreased at runtime (before the execution starts, not dynamically during it).
    For example : :TQ10000 what is that?Producers send data to consumers through so called "table queues" (TQ). The number, in your case 10000, is just a identifier generated by the database engine.
    TQTable queue, e.g.: TQ10000 -> Q1,00
    IN-OUTThis is the relationship between parallel operations. E.g. P->P means that a parallel operation sends data to another parallel operation.
    PQ_Disturb columns?This is the method used to distribute rows. E.g. RANGE means that the producers send specific ranges of rows to different consumers.
    For a more detailed discussion about these topics have a look to the documentation:
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14223/usingpe.htm#i1009828
    HTH
    Chris Antognini
    Author of Troubleshooting Oracle Performance, Apress 2008 (http://top.antognini.ch)

  • Parallel execution of interfaces

    Hi. In the ODI package I can locate my interfaces and join each two of them by two lines: 'ok' (succesful) and 'ko' (unsuccesful). So I get a sequential execution of these interfaces. How I can make ODI to execute them in parallel way?

    To do that, create a scenario from each of the interfaces (right-mouse button on the interface, generate scenario) and drag the scenario on to the package rather than the interface. This will give you an execute scenario tool, which you should set to execute Asynchronously. execute each of the interfaces, and then use an OdiWaitForChildSession tool to wait for the complketion of the child sessions. If only some of the tasks you execute asynchronously are on the critical path, you can use keywords when you start the executions, and in the wait tool. For those which are on the critical path, give a keyword CP. In the wait tool, wait with the keyword CP.

  • Parallel execution of multiple test cases.

    Does flex unit 4.x version supports for parallel execution of multiple test cases?
    Any help will be greatly appreciated.

    No.
    Flash Player and AIR are single-threaded virtual machines. The only parallel execution one could do is during asynchronous tests, but we do not support that presently for a variety of reasons.
    Mike

Maybe you are looking for

  • After reversing the Inbound delivery in VL09, lock in LT0G

    Hi, I am canceling a Inbound delivery (Plant - WM managed) thru VL09 and then trying  return to stock using LT0G. But I am getting lock, unable to reverse stock/TO , and the log says " Scheduled quantity exceeds available/picked quantity ". LS24 show

  • ITunes can't restore iPod mini

    I had to restart the player in disk mode to be able to connect it/see it in iTunes. When attempting to restore my iPod mini 4GB, iTunes 9.1 (79) lies saying that the player 'cannot be restored because it contains files that are in use by another appl

  • System status REL is active , Message no. BS013,CO88 COST-BY-SALES-ORDER

    Hi Experts, I meet error when i do the production order settlement"CO88" , Which the production mode is cost-by-sales-order undifferentiated mode. the error information as bellow: System status REL is active (ORD XXXXX) Message no. BS013 Diagnosis Ob

  • Mac OS X Lion WiFi issues

    Ever since I have upgraded my late 2009-iMac to Mac OS X Lion 10.7 I have been experiencing issues regarding my WiFi. I'm actually loosing connectivity, as in AirPort seems to keep "refreshing itself" for no apparent reason, and disconnecting my WiFi

  • TS1424 what does error 13014 mean?

    when i attempt to open itunes through the icon on my computer, the message, "the itunes application could not be opened. An unknown error  occured (13014)" and it doesn't open.  Any suggestions?