Performance hit when using a FirePro GPU?

Hey there!
I'm interested in purchasing a cheap ATI FirePro V4900 or similar GPU in order to take advantage of my 10 bit TFT when using Photoshop. I was wondering if I have to expect a performance hit when using PS 6.0 with such a card as opposed to a normal "gamer" GPU like the NVidia 670 GTX when :
- performing normal file handling, opening PSD files, paning, zooming, brushing, etc.
- applying some of the newer GPU-enhanced filters like Liquify, Oil Paint, Iris Blur, 3d enhancements, etc.
- actually applying/rendering a more demanding fliter such as Iris Blur?
Does anyone know about this? I'm afraid I could not find any benchmarks at all except for the one on Tomshardware regarding OCL, but that one does not include professional GPUs...
Thanks for any info in advance!

There will not be synchronization when the method of A
is being called. The method 1) certainly saves memory
space, but will the performance be hurt since there
will only be one object accessed by multiple threads?
Or maybe it doesn't matter?If there is no synchronization, it will not matter. Threads execute methods. Methods do not run on Objects. The Object is just data that is implicitly linked to the method.
Just make sure it's safe to keep the method unsynchronized.

Similar Messages

  • Performance problem when using CAPS LOCK piano input

    Dear reader,
    I'm very new to Logic and am running into a performance problem when using the CAPS LOCK-piano-keyboard for input of an instrument: when I'm not recording everything is fine and the program instantly responds on my keystrokes, but as soon as I go into record-mode there is sometimes a delay in the response-time (so I press a key and it takes up to half a second longer before the note is actually played).
    Is there anything to do about this to improve performance (for example turning of certain features of the application), or should I never use the CAPS LOCK keyboard anyway and go straight for an external MIDI-keyboard?
    Thanks and regards,
    Tim Metz

    Does your project have Audio tracks and just how heavy it is, how many tracks? Also, what kind of Software Instrument do you use?

  • Performance hit when running in ARCHIVELOG mode.

    What is the performance hit when running in ARCHIVELOG mode?
    Thank you,
    David

    I am not one to disagree with Tom Kyte (unless I think he is wrong :) ), and I am not going to disagree here. I do caution the simplistic answer that the hit is negligible. I commend the respondent who qualified that answer with a discussion of I/O.
    I have come across more than one situation where archive logging was a performance hit because of the associated I/O. Many want to put archive logs on cheaper storage and do not recognize that not only can this slow a system but that it could become a major issue resulting in a system that hangs until the logs are written. A better solution for these folks is to write to fast storage and have a secondary process that offloads those logs to the slower storage.
    Let us also not assume that the archive location is local disk. It might be that an archive location is remote, such as with log shipping or NFS. Network latency can become an issue.
    There are many things to consider as there always are. I suppose with any answer, even if simple, one could spin it with some obscure situation that makes the simple answer inappropriate. Having seen some burned by this issue, I chose to elaborate, and I appreciate your indulgence.
    Chris

  • No performance gain when using local interfaces

    Hello,
    I'm doing some tests to compare performances between remote ejb interfaces and local ejb interfaces.
    I have two stateless session beans EJB1 and EJB2, EJB1 calls a method on EJB2, this method receives one object as the only parameter and returns it immediately. The parameter is a big object (~700ko). My test consists simply of making 1000 calls from EJB1 to EJB2, one time with remote interfaces, one time with local interface. For both tests, the EJBs run in the same container, same VM.
    The results show absolutely no differences between the remote and the local interface !
    As I found these results a bit surprising, I changed the serialization method of my parameter object this way:
    private void writeObject(java.io.ObjectOutputStream out) throws IOException {
    System.out.println("writeObject(MyBigObject)");
    out.defaultWriteObject();
    just to check if my object is serialized when using remote interface. And the response is no.
    So question is: is there an "undocumented optimization" of the stub/skel generated by weblogic which make local calls when calling a remote method inside the same VM ?
    Some precisions:
    - I'am using weblogic 8.1sp2
    - When calling remotely my EJB2 from an external batch (running in a separate VM), I see the message "writeObject(MyBigObject)" so the serialization is done in this case.

    <Fr?d?ric Chopard> wrote in message news:[email protected]..
    So question is: is there an "undocumented optimization" of the stub/skel generated by weblogic which make local calls when callinga remote method inside the same VM ?
    >
    Some precisions:
    - I'am using weblogic 8.1sp2
    - When calling remotely my EJB2 from an external batch (running in a separate VM), I see the message "writeObject(MyBigObject)" sothe serialization is done in this case.
    WebLogic 5.x, 6.x and 7.x do call by reference for co-located EJBs by default. 8.1 has this behavior turned off by default. You may
    experience call-by-reference optimization in 8.1 only if it has been turned on explicitly in the deployment descriptor.
    Hope this helps.
    Regards,
    Slava Imeshev

  • Performance issues when using Smart View and Excel 2010

    Hello, we are experiencing very slow retrieval times when using Smart View and Excel 2010. Currently on v.11.1.3.00 and moved over from Excel 2003 in the last quarter. The same spreadsheets in 2010 (recreated) are running much slower than they used to in 2003 and I was wondering if anyone else out there has experienced similar problems?
    It looks like there is some background caching going on as when you copy and paste the contents into a new file and retrieve it is better.....initially. The size of the files are generally less than 2mb and there aren't an expecially large number of subcubes requested so I am at a loss to explain or alleviate the issues.
    Any advice / tips on how to optimise the performance would be greatly appreciated.
    Thanks,
    Nick

    Hi Nick,
    Office 2010 (32 bit) only is supported.
    Also check these documents:
    Refresh in Smart View 11.1.2.1 is Slow with MS Office 2010. (Doc ID 1362557.1)
    Smart View Refresh Returns Zeros (Doc ID 758892.1)
    Internet Explorer (IE7, IE8 and IE9) Recommended Settings for Oracle Hyperion Products (Doc ID 820892.1)
    Thank you,
    Charles Babu J
    Edited by: CJX on Nov 15, 2011 12:21 PM

  • Total system memory *decreases* when using invidia 9600M GPU

    I have 4 GB of RAM in my MBP. I understand that when using the integrated video processor (invidia 9400M), 250 MB of system RAM are set aside for the video memory. So when my total system RAM showed 3.8 GB, that made sense. However, when I switched to the 9600M GPU which has its own 256 MB of dedicated VRAM, total system memory actually decreased to 3729 MB!
    How can that be, and why isn't does the total amount of RAM installed show 4096 MB?

    Hi Odysseus,
    I am not completely sure here, but it sounds like you are seeing an issue related to 32-bit addressing. I am not well-versed in Mac architecture, but I when it comes to PC architecture. With a system that uses 32-bit kernel (like Mac OS X and 32-bit versions of Windows), it can natively access up to 4 GBs of RAM (232bytes). Here is where I get sketchy, I know that 32-bit WIndows (including Vista) uses what is termed a flat memory model. In order for the system to access the video RAM, the kernel maps the video memory over the upper addressees of the 4 GB memory space. It does it backwards, so for a 256 MB video card, it gets the addressees from 4096 - 3840 MBs. This prevents these addressees from being used by the system, so you effectively lose that RAM. There are two traditional methods of fixing this, the first is to use more than 32-bits of address space, and allow the video RAM to be mapped above the 4 GB barrier. This is what the Intel Santa Rosa chipset (used in all older MBPs that support 4 GBs of RAM), The second fix is to use a 64-bit kernel, which puts the address space up to the 264 range (around 17.2 billion GBs of RAM). As previously mentioned, I am not well versed with the Mac architecture, but I wonder if the behavior you are seeing is some combination of the 9400M taking its system memory, and the 9600 GT taking up addressees due to an addressing limitation? Won't really know for sure until Snow Leopard comes out, as it finally makes the OS X kernel 64-it, which should ease any addressing limitations. Good luck!
    Rich S.

  • Performance degradation when using foreign keys

    Hi,
    I face drastic performance degradation when I add foreign keys to a table and perform insert / update on that table.
    I have a row store table to  which I need to insert around 1,50,000 records.
    If the table has no foreign key reference it takes maximum of 5 seconds but if the same table has references to other tables (in my case there are 3 references), the processing speed reduces drastically to 2 minutes.
    Is there any solution / best practice that can help me in gaining performance (processing speed) in this situation?
    Thanks
    S.Srivatsan

    Hi Sri,
    When you perform one insert in any database table which is having foreign key relationships, it will check the corresponding parent tables to check whether the master data is available or not. If your table is having 2 foreign key relationship, it happen twice per insert. Hence the performance will degrade. This is one of the reasons why ECC  doesn't establish foreign key relationship in the back end database. The case is not just for INSERT, for UPDATE & DELETE the same is applicable.
    Sreehari

  • Performance problems when using Premiere Elements for photo slideshows

    Hello,
    I had been using Premiere Elements 9 (PE9) to make a simple slideshow for my parents from their vacation trip and I ran into some serious performance problems.  I had used it to create similar projects before, but not nearly as big.  This one is like 260 photos, so basically it is 260 seperate clips.  I have a POWERHOUSE workstation (see below) so it isn't my PC.  Even when PE9 crashes, looking at my performance monitor my CPU and RAM aren't even halfway being utilized.  I finally switched to Windows Movie Maker of all things and it worked seemlessly, amazing really.  I'm wondering if I was just using PE9 for something other than what it was designed for since there weren't really any video clips, just a ton of photos that I made into video clips, if that makes sense.  Based upon my experience with this so far, I can't imagine using PE9 anymore for anything really.  I might have the need for a more professional video editing program in the near future, although it does seem like PE has a lot of features.  How can I make sure it utilizes my workstation to its full potential?  Here are my specs:
    PC
    Intel Core i7-2600K 4.6 GHz Overclocked
    ASUS P8P67 Deluxe Motherboard
    AMD Firepro V8800 Video Card
    Crucial 128 GB SATA 6Gb/s Solid State Drive (Operating System)
    Corsair Vengeance 16GB (4x4GB) Memory
    Corsair H60 Liquid CPU Cooler
    Corsair Professional Series Gold AX850 Power Supply
    Graphite Series 600T Mid-Tower Case
    Western Digital Caviar Black 1 TB SATA III Hard Drive
    Western Digital Caviar Black 2 TB SATA III Hard Drive
    Western Digital Green 3 TB SATA III Hard Drive
    Logitech Wireless Gaming Mouse G700
    I don’t play any games but it’s a great productivity mouse with 13 customizable buttons
    Wacom Intuos5 Pen Tablet
    Yes, this system is blazingly fast.  I have yet to feel it slow down, even with Photoshop, Lightroom, InDesign, Illustrator and numerous other apps running at the same time.  HOWEVER, Premiere Elements 9 has crashed NUMERUOS times, every time my system wasn't even close to being fully taxed. 
    Monitors – All run on the ATI V8800
    Dell Ultra Sharp 30 inch
    Samsung 27 Inch
    HAANS-G 28 Inch
    Herman Miller Embody Ergonomic Chair (one of my favorite items)

    Andy,
    There ARE some differences between PrE and PrPro w/ an approved CUDA-capable and MPE hardware acceleration-enabled nVidia video card, but those differences show up ONLY in the quality of the Scaling. The processing overhead is almost exactly the same, when it comes to handling the extra pixels.
    As of PrPro CS 5, two things changed:
    The max. size of Still Images went up from 4096 x 4096 pixels, to quite a bit larger (cannot recall the numbers now).
    The Scaling algorithms have been improved, though ONLY with the correct nVidia cards, with MPE hardware support enabled.
    Now, there CAN be another consideration, between the two programs, in that PrPro CS 5 - CS 6, are 64-bit ONLY, so one benefits from the computer and OS to run it. PrE can be either 32-bit, or 64-bit, so one might, or might not, be taking advantage of the 64-bit program and OS. Still, the processing overhead will be almost identical, it's just that the 64-bit OS can spread it around a bit.
    I still recommend Scaling the large Still Images in PS, prior to Import, to keep that processing overhead as low as is possible. Scaled Still Images work just fine, and I have one Project with 3000+ Scaled Still Images, that edits just fine in PrPro, even on my older 32-bit workstation. Testing that same machine, and PrPro some years ago, I could ONLY work with up to 5 - 4096 x 4096 Stills, before things ground to a crawl.
    Now, Adobe AfterEffects handles large Still Images differently, so I just moved that test Project to AE, and added another 20 large Images, which edited just fine. IIRC, AE can handle Still Images up to 10K x 10K pixels, and that might have gone up, as of CS 5.
    Good luck, and hope that helps,
    Hunt

  • Performance issue when using the same query in a different way

    Hello,
    I have a performance problem with the statement below when running it with an insert or with execute immediate.
    n.b.: This statement could be more optimized, but it is a generated statement.
    When I run this statement I get one row back within one second, so there is no performance problem.
       select  sysdate
             ,5
             ,'testje'
             ,count (1)
             ,'NL' groupby
       from   (select 'different (target)' compare_type
                       ,t.id_org_addr id_org_addr -- ID_ORG_ADDR
                       ,t.vpd_country vpd_country -- CTL_COUNTRY
                       ,t.addr_type addr_type -- ADDRESSTYP_COD
                 from   (select *
                         from   (select t.*
                                 from      ods.ods_org_addr t
                                        left outer join
                                           m_sy_foreign_key m
                                        on m.vpd_country = t.vpd_country
                                        and m.key_type = 'ORGADDR2'
                                        and m.target_value = t.id_org_addr
                                 where  coalesce (t.end_date, to_date ('99991231', 'yyyymmdd')) >= sysdate) /*SGRB*/
                         where  vpd_country = 'NL' /*EGRB*/
                                                  ) t
                 where  exists
                           (select null
                            from   (select *
                                    from   (select m.target_value id_org_addr
                                                  ,s.wkp_id_cegedim || '-' || s.adr_id_cegedim || '-' || s.addresstyp_cod id_cegedim
                                                  ,s.*
                                            from      okc_mdl_workplace_address s
                                                   left outer join
                                                      m_sy_foreign_key m
                                                   on m.vpd_country = s.ctl_country
                                                   and m.key_type = 'ORGADDR2'
                                                   and m.source_value = s.wkp_id_cegedim || '-' || s.adr_id_cegedim || '-' || s.addresstyp_cod
                                            where  coalesce (s.end_val_dat, to_date ('99991231', 'yyyymmdd')) >= sysdate) /*SGRB*/
                                    where  ctl_country = 'NL' /*EGRB*/
                                                             ) s
                            where  t.id_org_addr = s.id_org_addr)
                 minus
                 select 'different (target)' compare_type
                       ,s.id_org_addr id_org_addr -- ID_ORG_ADDR
                       ,s.ctl_country vpd_country -- CTL_COUNTRY
                       , (select to_number (l.target_value)
                          from   okc_code_foreign l
                          where  l.source_code_type = 'TYS'
                          and    l.target_code_type = 'ADDRLINKTYPE'
                          and    l.source_value = upper (s.addresstyp_cod)
                          and    l.vpd_country = s.ctl_country)
                           addr_type -- ADDRESSTYP_COD
                 from   (select *
                         from   (select m.target_value id_org_addr
                                       ,s.wkp_id_cegedim || '-' || s.adr_id_cegedim || '-' || s.addresstyp_cod id_cegedim
                                       ,s.*
                                 from      okc_mdl_workplace_address s
                                        left outer join
                                           m_sy_foreign_key m
                                        on m.vpd_country = s.ctl_country
                                        and m.key_type = 'ORGADDR2'
                                        and m.source_value = s.wkp_id_cegedim || '-' || s.adr_id_cegedim || '-' || s.addresstyp_cod
                                 where  coalesce (s.end_val_dat, to_date ('99991231', 'yyyymmdd')) >= sysdate) /*SGRB*/
                         where  ctl_country = 'NL' /*EGRB*/
                                                  ) s) When I run this statement using a insert by placing
    insert into okc_compare_results (
                   datetime
                  ,compare_tables_id
                  ,compare_target
                  ,record_count
                  ,groupby
                ) before the statement, then the statement runs about *3 to 4 minutes*, The same is happening when running the select part only using execute immediate.
    Below the execution plans of the insert with the select and the select only.
    Could somebody tell me what causes the different behavior of the "same" statement and what could I do to avoid this behavior.
    The database version is: 11.1.0.7.0
    Regards,
    Fred.
    SQL Statement which produced this data:
      select * from table(dbms_xplan.display_cursor ('cuk3uwnxx344q',0 /*3431532430 */))
      union all
      select * from table(dbms_xplan.display_cursor ('862aq599gfd6n',0/*3531428851 */))
    plan_table_output
    SQL_ID  cuk3uwnxx344q, child number 0
    select sysdate          ,:"SYS_B_00"          ,:"SYS_B_01"          
    ,count (:"SYS_B_02")          ,:"SYS_B_03" groupby    from   ( (select
    :"SYS_B_04" compare_type                    ,t.id_org_addr id_org_addr
    -- ID_ORG_ADDR                    ,t.vpd_country vpd_country --
    CTL_COUNTRY                    ,t.addr_type addr_type -- ADDRESSTYP_COD
                 from   (select *                      from   (select t.*   
                               from      ods.ods_org_addr t                 
                        left outer join                                     
       m_sy_foreign_key m                                     on
    m.vpd_country = t.vpd_country ;                                    and
    m.key_type = :"SYS_B_05"                                     and
    m.target_value = t.id_org_addr ;                             where  
    coalesce (t.end_date, to_date (:"SYS_B_06", :"SYS_B_07")) >= sysdate)
    /*SGRB*/                      where  vpd_country = :"SYS_B_08" /*EGRB*/
    Plan hash value: 3431532430
    Id   Operation                                  Name                       Rows   Bytes Cost (%CPU) Time      Pstart Pstop
    0 SELECT STATEMENT                                                                         1772 (100)                           
    1   SORT AGGREGATE                                                        1                                                
    2    VIEW                                                                 3           1772   (1) 00:00:22                
    3     MINUS                                                                                                                      
    4      SORT UNIQUE                                                        3 492   1146   (1) 00:00:14                
    *  5       HASH JOIN OUTER                                                   3 492   1145   (1) 00:00:14                
    6        NESTED LOOPS                                                                                                            
    7         NESTED LOOPS                                                    3 408    675   (1) 00:00:09                
    *  8          HASH JOIN                                                      42 4242    625   (1) 00:00:08                
    9           PARTITION LIST SINGLE                                         3375    148K    155   (2) 00:00:02    KEY    KEY
    * 10            TABLE ACCESS FULL                OKC_MDL_WORKPLACE_ADDRESS 3375    148K    155   (2) 00:00:02    KEY    KEY
    * 11           INDEX RANGE SCAN                  PK_M_SY_FOREIGN_KEY        49537   2709K    469   (1) 00:00:06                
    * 12          INDEX UNIQUE SCAN                  UK_ODS_ORG_ADDR            1              1   (0) 00:00:01                
    * 13         TABLE ACCESS BY GLOBAL INDEX ROWID ODS_ORG_ADDR               1 35      2   (0) 00:00:01 ROWID ROWID
    * 14        INDEX RANGE SCAN                     PK_M_SY_FOREIGN_KEY        49537   1354K    469   (1) 00:00:06                
    15      NESTED LOOPS                                                                                                              
    16       NESTED LOOPS                                                      1 67      9  (12) 00:00:01                
    17        NESTED LOOPS                                                     1 48      8  (13) 00:00:01                
    * 18         HASH JOIN                                                       1 23      6  (17) 00:00:01                
    * 19          TABLE ACCESS BY GLOBAL INDEX ROWID ODS_COUNTRY_SYSTEM         1 11      2   (0) 00:00:01 ROWID ROWID
    * 20           INDEX RANGE SCAN                  PK_ODS_DIVISION_SYSTEM     1              1   (0) 00:00:01                
    * 21          TABLE ACCESS FULL                  SY_SOURCE_CODE             8 96      3   (0) 00:00:01                
    22         TABLE ACCESS BY INDEX ROWID         SY_FOREIGN_CODE            1 25      2   (0) 00:00:01                
    * 23          INDEX RANGE SCAN                   PK_SY_FOREIGN_CODE         1              1   (0) 00:00:01                
    * 24        INDEX UNIQUE SCAN                    PK_SY_TARGET_CODE          1              0   (0)                           
    * 25       TABLE ACCESS BY INDEX ROWID           SY_TARGET_CODE             1 19      1   (0) 00:00:01                
    26      SORT UNIQUE                                                        3375    332K    626   (1) 00:00:08                
    * 27       HASH JOIN OUTER                                                   3375    332K    625   (1) 00:00:08                
    28        PARTITION LIST SINGLE                                            3375    148K    155   (2) 00:00:02    KEY    KEY
    * 29         TABLE ACCESS FULL                   OKC_MDL_WORKPLACE_ADDRESS 3375    148K    155   (2) 00:00:02    KEY    KEY
    * 30        INDEX RANGE SCAN                     PK_M_SY_FOREIGN_KEY        49537   2709K    469   (1) 00:00:06                
    Predicate Information (identified by operation id):
       5 - access("M"."TARGET_VALUE"="T"."ID_ORG_ADDR" AND "M"."VPD_COUNTRY"="T"."VPD_COUNTRY")
       8 - access("M"."SOURCE_VALUE"="S"."WKP_ID_CEGEDIM" :SYS_B_12 S."ADR_ID_CEGEDIM" :SYS_B_13 S."ADDRESSTYP_COD" AND
                  "M"."VPD_COUNTRY"="S"."CTL_COUNTRY")
      10 - filter(COALESCE("S"."END_VAL_DAT",TO_DATE(:SYS_B_14,:SYS_B_15))>=SYSDATE@!)
      11 - access("M"."KEY_TYPE"=:SYS_B_11 AND "M"."VPD_COUNTRY"=:SYS_B_16)
      12 - access("T"."ID_ORG_ADDR"="M"."TARGET_VALUE")
      13 - filter(("T"."VPD_COUNTRY"=:SYS_B_08 AND COALESCE("T"."END_DATE",TO_DATE(:SYS_B_06,:SYS_B_07))>=SYSDATE@!))
      14 - access("M"."KEY_TYPE"=:SYS_B_05 AND "M"."VPD_COUNTRY"=:SYS_B_08)
      18 - access("CS"."ID_SYSTEM"="SK"."ID_SOURCE_SYSTEM")
      19 - filter("CS"."SYSTEM_TYPE"=1)
      20 - access("CS"."VPD_COUNTRY"=:B1 AND "CS"."EXP_IMP_TYPE"='I')
           filter("CS"."EXP_IMP_TYPE"='I')
      21 - filter("SK"."CODE_TYPE"=:SYS_B_18)
      23 - access("FK"."ID_SOURCE_CODE"="SK"."ID_SOURCE_CODE" AND "FK"."SOURCE_VALUE"=UPPER(:B1) AND
                  "CS"."VPD_COUNTRY"="FK"."VPD_COUNTRY")
           filter(("FK"."VPD_COUNTRY"=:B1 AND "FK"."SOURCE_VALUE"=UPPER(:B2) AND "CS"."VPD_COUNTRY"="FK"."VPD_COUNTRY"))
      24 - access("FK"."ID_TARGET_CODE"="TK"."ID_TARGET_CODE")
      25 - filter("TK"."CODE_TYPE"=:SYS_B_19)
      27 - access("M"."SOURCE_VALUE"="S"."WKP_ID_CEGEDIM" :SYS_B_23 S."ADR_ID_CEGEDIM" :SYS_B_24 S."ADDRESSTYP_COD" AND
                  "M"."VPD_COUNTRY"="S"."CTL_COUNTRY")
      29 - filter(COALESCE("S"."END_VAL_DAT",TO_DATE(:SYS_B_25,:SYS_B_26))>=SYSDATE@!)
      30 - access("M"."KEY_TYPE"=:SYS_B_22 AND "M"."VPD_COUNTRY"=:SYS_B_27)
    SQL_ID  862aq599gfd6n, child number 0
    insert into okc_compare_results (                datetime               
    ,compare_tables_id               ,compare_target               
    ,record_count               ,groupby             )                
    select sysdate          ,:"SYS_B_00"          ,:"SYS_B_01"          
    ,count (:"SYS_B_02")          ,:"SYS_B_03" groupby    from   ( (select
    :"SYS_B_04" compare_type                    ,t.id_org_addr id_org_addr
    -- ID_ORG_ADDR                    ,t.vpd_country vpd_country --
    CTL_COUNTRY                    ,t.addr_type addr_type -- ADDRESSTYP_COD
                 from   (select *                      from   (select t.*   
                               from      ods.ods_org_addr t                 
                        left outer join                                     
       m_sy_foreign_key m                                     on
    m.vpd_country = t.vpd_country ;                                    and
    m.key_type = :"SYS_B_05"                                     and
    m.target_value = t.id_org_addr
    Plan hash value: 3531428851
    Id   Operation                                   Name                       Rows   Bytes Cost (%CPU) Time      Pstart Pstop
    0 INSERT STATEMENT                                                                          1646 (100)                           
    1   LOAD TABLE CONVENTIONAL                                                                                                       
    2    SORT AGGREGATE                                                        1                                                
    3     VIEW                                                                 1           1646   (1) 00:00:20                
    4      MINUS                                                                                                                      
    5       SORT UNIQUE                                                        1 163                                        
    6        NESTED LOOPS OUTER                                                1 163   1067   (1) 00:00:13                
    7         NESTED LOOPS                                                     1 135    599   (1) 00:00:08                
    *  8          HASH JOIN                                                       19 1919    577   (2) 00:00:07                
    9           PARTITION LIST SINGLE                                          1535 69075    107   (4) 00:00:02    KEY    KEY
    * 10            TABLE ACCESS FULL                 OKC_MDL_WORKPLACE_ADDRESS 1535 69075    107   (4) 00:00:02    KEY    KEY
    * 11           INDEX RANGE SCAN                   PK_M_SY_FOREIGN_KEY        49537   2709K    469   (1) 00:00:06                
    * 12          TABLE ACCESS BY GLOBAL INDEX ROWID ODS_ORG_ADDR               1 34      2   (0) 00:00:01 ROWID ROWID
    * 13           INDEX UNIQUE SCAN                  UK_ODS_ORG_ADDR            25              1   (0) 00:00:01                
    * 14         INDEX RANGE SCAN                     PK_M_SY_FOREIGN_KEY        1 28    468   (1) 00:00:06                
    15       NESTED LOOPS                                                                                                              
    16        NESTED LOOPS                                                      1 67      8   (0) 00:00:01                
    17         NESTED LOOPS                                                     1 48      7   (0) 00:00:01                
    18          NESTED LOOPS                                                    1 23      5   (0) 00:00:01                
    * 19           TABLE ACCESS BY GLOBAL INDEX ROWID ODS_COUNTRY_SYSTEM         1 11      2   (0) 00:00:01 ROWID ROWID
    * 20            INDEX RANGE SCAN                  PK_ODS_DIVISION_SYSTEM     1              1   (0) 00:00:01                
    * 21           TABLE ACCESS FULL                  SY_SOURCE_CODE             1 12      3   (0) 00:00:01                
    22          TABLE ACCESS BY INDEX ROWID         SY_FOREIGN_CODE            1 25      2   (0) 00:00:01                
    * 23           INDEX RANGE SCAN                   PK_SY_FOREIGN_CODE         1              1   (0) 00:00:01                
    * 24         INDEX UNIQUE SCAN                    PK_SY_TARGET_CODE          1              0   (0)                           
    * 25        TABLE ACCESS BY INDEX ROWID           SY_TARGET_CODE             1 19      1   (0) 00:00:01                
    26       SORT UNIQUE                                                        1535    151K                                        
    * 27        HASH JOIN OUTER                                                   1535    151K    577   (2) 00:00:07                
    28         PARTITION LIST SINGLE                                            1535 69075    107   (4) 00:00:02    KEY    KEY
    * 29          TABLE ACCESS FULL                   OKC_MDL_WORKPLACE_ADDRESS 1535 69075    107   (4) 00:00:02    KEY    KEY
    * 30         INDEX RANGE SCAN                     PK_M_SY_FOREIGN_KEY        49537   2709K    469   (1) 00:00:06                
    Predicate Information (identified by operation id):
       8 - access("M"."SOURCE_VALUE"="S"."WKP_ID_CEGEDIM" :SYS_B_12 S."ADR_ID_CEGEDIM" :SYS_B_13 S."ADDRESSTYP_COD" AND
                  "M"."VPD_COUNTRY"="S"."CTL_COUNTRY")
      10 - filter(COALESCE("S"."END_VAL_DAT",TO_DATE(:SYS_B_14,:SYS_B_15))>=SYSDATE@!)
      11 - access("M"."KEY_TYPE"=:SYS_B_11 AND "M"."VPD_COUNTRY"=:SYS_B_16)
      12 - filter((COALESCE("T"."END_DATE",TO_DATE(:SYS_B_06,:SYS_B_07))>=SYSDATE@! AND "T"."VPD_COUNTRY"=:SYS_B_08))
      13 - access("T"."ID_ORG_ADDR"="M"."TARGET_VALUE")
      14 - access("M"."KEY_TYPE"=:SYS_B_05 AND "M"."VPD_COUNTRY"=:SYS_B_08 AND "M"."TARGET_VALUE"="T"."ID_ORG_ADDR")
           filter("M"."TARGET_VALUE"="T"."ID_ORG_ADDR")
      19 - filter("CS"."SYSTEM_TYPE"=1)
      20 - access("CS"."VPD_COUNTRY"=:B1 AND "CS"."EXP_IMP_TYPE"='I')
           filter("CS"."EXP_IMP_TYPE"='I')
      21 - filter(("SK"."CODE_TYPE"=:SYS_B_18 AND "CS"."ID_SYSTEM"="SK"."ID_SOURCE_SYSTEM"))
      23 - access("FK"."ID_SOURCE_CODE"="SK"."ID_SOURCE_CODE" AND "FK"."SOURCE_VALUE"=UPPER(:B1) AND
                  "CS"."VPD_COUNTRY"="FK"."VPD_COUNTRY")
           filter(("FK"."VPD_COUNTRY"=:B1 AND "FK"."SOURCE_VALUE"=UPPER(:B2) AND "CS"."VPD_COUNTRY"="FK"."VPD_COUNTRY"))
      24 - access("FK"."ID_TARGET_CODE"="TK"."ID_TARGET_CODE")
      25 - filter("TK"."CODE_TYPE"=:SYS_B_19)
      27 - access("M"."SOURCE_VALUE"="S"."WKP_ID_CEGEDIM" :SYS_B_23 S."ADR_ID_CEGEDIM" :SYS_B_24 S."ADDRESSTYP_COD" AND
                  "M"."VPD_COUNTRY"="S"."CTL_COUNTRY")
      29 - filter(COALESCE("S"."END_VAL_DAT",TO_DATE(:SYS_B_25,:SYS_B_26))>=SYSDATE@!)
      30 - access("M"."KEY_TYPE"=:SYS_B_22 AND "M"."VPD_COUNTRY"=:SYS_B_27)Edited by: BluShadow on 20-Jun-2012 10:30
    added {noformat}{noformat} tags for readability.  Please read {message:id=9360002} and learn to do this yourself.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              

    yes, all the used tables are analyzed.
    Thanks, for pointing to the metalink bug, I have also searched in metalink, but didn't find this bug.
    I have a little bit more information about the problem.
    I use the following select (now in a readable format)
    select count (1)
    from   ( (select 'different (target)' compare_type
                    ,t.id_org_addr id_org_addr -- ID_ORG_ADDR
                    ,t.vpd_country vpd_country -- CTL_COUNTRY
                    ,t.addr_type addr_type -- ADDRESSTYP_COD
              from   (select *
                      from   (select t.*
                              from      ods.ods_org_addr t
                                     left outer join
                                        m_sy_foreign_key m
                                     on m.vpd_country = t.vpd_country
                                     and m.key_type = 'ORGADDR2'
                                     and m.target_value = t.id_org_addr
                              where  coalesce (t.end_date, to_date ('99991231', 'yyyymmdd')) >= sysdate) /*SGRB*/
                      where  vpd_country = 'NL' /*EGRB*/
                                               ) t
              where  exists
                        (select null
                         from   (select *
                                 from   (select m.target_value id_org_addr
                                               ,s.wkp_id_cegedim || '-' || s.adr_id_cegedim || '-' || s.addresstyp_cod id_cegedim
                                               ,s.*
                                         from      okc_mdl_workplace_address s
                                                left outer join
                                                   m_sy_foreign_key m
                                                on m.vpd_country = s.ctl_country
                                                and m.key_type = 'ORGADDR2'
                                                and m.source_value = s.wkp_id_cegedim || '-' || s.adr_id_cegedim || '-' || s.addresstyp_cod
                                         where  coalesce (s.end_val_dat, to_date ('99991231', 'yyyymmdd')) >= sysdate) /*SGRB*/
                                 where  ctl_country = 'NL' /*EGRB*/
                                                          ) s
                         where  t.id_org_addr = s.id_org_addr)
              minus
              select 'different (target)' compare_type
                    ,s.id_org_addr id_org_addr -- ID_ORG_ADDR
                    ,s.ctl_country vpd_country -- CTL_COUNTRY
                    , (select to_number (l.target_value)
                       from   okc_code_foreign l
                       where  l.source_code_type = 'TYS'
                       and    l.target_code_type = 'ADDRLINKTYPE'
                       and    l.source_value = upper (s.addresstyp_cod)
                       and    l.vpd_country = s.ctl_country)
                        addr_type -- ADDRESSTYP_COD
              from   (select *
                      from   (select m.target_value id_org_addr
                                    ,s.wkp_id_cegedim || '-' || s.adr_id_cegedim || '-' || s.addresstyp_cod id_cegedim
                                    ,s.*
                              from      okc_mdl_workplace_address s
                                     left outer join
                                        m_sy_foreign_key m
                                     on m.vpd_country = s.ctl_country
                                     and m.key_type = 'ORGADDR2'
                                     and m.source_value = s.wkp_id_cegedim || '-' || s.adr_id_cegedim || '-' || s.addresstyp_cod
                              where  coalesce (s.end_val_dat, to_date ('99991231', 'yyyymmdd')) >= sysdate) /*SGRB*/
                      where  ctl_country = 'NL' /*EGRB*/
                                               ) s)) The select is executed in 813 msecs
    When I execute the same select using execute immediate like:
    declare
       ln_count number;
    begin
       execute immediate q'[<select statement>]' into ln_count;
    end;This takes 3:56 minutes to complete.
    When I change the second coalesce part (the one within the exists) in the flowing way:
    the part
    coalesce (s.end_val_dat, to_date ('99991231', 'yyyymmdd')) >= sysdate
    is replaced by
    s.end_val_dat >= sysdate or s.end_val_dat is nullthen the execution time is even faster (560 msecs) in both, the plain select and the select using the execute immediate.

  • What are the performance tradeoffs when using more than one EntityStore?

    Hi,
    I have different accounts where each account has the same set of Entity classes. I don't know yet wheter to have one EntityStore for each account or have one EntityStore for all accounts together and do a lot of 'joining' when retrieving Entities.
    This is a very similar use case as with the FAQ http://www.oracle.com/technology/products/berkeley-db/faq/je_faq.html#37 . The only difference is that I want to use DTP.
    It would be great if you could answer me the following questions:
    1.) Do basicly the same answers as in the FAQ apply to EntityStores?
    2.) How expensive is an EntityStore (memory, speed - creating and releasing)?
    3.) What would you recommend? I have to do a lot of secondary-index lookups which are restricted to one account. There are about 10 Entity classes and about 1000 accounts.
    Thanks,
    Christian

    Hello,
    It would be great if you could answer me the
    following questions:
    1.) Do basicly the same answers as in the FAQ apply
    to EntityStores?Yes, they apply.
    2.) How expensive is an EntityStore (memory, speed -
    creating and releasing)?For each store, there is an underlying Database per entity class and per secondary key. And for each store there is a catalog database which is also kept in memory.
    3.) What would you recommend? I have to do a lot of
    secondary-index lookups which are restricted to one
    account. There are about 10 Entity classes and about
    1000 accounts. I recommend using a single store for best performance and resource utilization.
    Mark

  • Performance Impact When Using SNC Communication

    Hello,
    Does anybody know if and how much performance impact there is if we use SNC for communication between the SAP Server and SAPGUI?
    I think there are two areas that may be impacted; Network and server CPU.
    For network load, I did find a part in "Front-End Network Requirements for SAP Business Solutions" document saying "overhead of roughly 350 bytes per user interaction step" but it does not specify the type of encryption.  I wonder if there is any other info on this?
    For CPU impact, how much overhead should I consider for sapgui access?
    I see no field for this in the quicksizer and I can't seem to find any white papers on this subject.
    Thank you in advance.

    >
    Peter Adams wrote:
    > Ken,
    >
    > if you plan to use SAPcryptlib for SNC between SAP servers, then you should use a SAPcryptolib-compatible solution for the SNC communication between SAPGUI and SAP server, and there is only one vendor who can provide this. Let me know, if you need help finding it. My contact information is in my SDN business card.
    Just so Kan is clear - It is not legal to use the SAP cryptolib provided by SAP for SNC between SAP GUI and SAP servers, so if x.509 is the desired mechanism you need to purchase additional software from the company which Peter works for to provide SAP GUI SNC-based SSO. I think instead, Kan might be using the free SAP supplied SNC Kerberos library, which is why I asked him to confirm this in my last post. I doubt he is interested to buy any third party software.
    > As to the performance discussion: first of all, yes, there will be a small performance impact if SNC is used (no matter which type or implementation), but from our experience with many actual SNC implementations, I can state that this is practically not relevant. It is not noticeable by users. There were never any performance discussions with customers. See also SAP Note 1043694.
    I agree with this - the performance impact is not noticed by users, but the system managers who look after the servers where SAP is installed, and the team responsible for the network need to be aware of any differences (if any) when SNC is turned on and when SNC is turned off. I think this is why Kan is asking these questions, not because he is concerned about users noticing any difference when they logon to SAP.
    > Just a first quick comment on certain statements above: Tim's arguments for proving his overall statement are not conclusive from my perspective. Nor do I think his overall statement itself is correct.
    The facts I mentioned are well known facts, e.g. symmetric crypto is far better from performance point of view than asymmetric. I know the examples I have shown which I found when doing a quick google search were not conclusive, but they were shown as initial examples, not necessarily the best examples. This is why I specifically mentioned that if you search in google yourself you will see many more references where comparisons are done between Kerberos (e.g. symmatric) compared with PKI (e.g. asymmetric).
    > First of all, he only selects one aspect of performance - CPU impact of encryption algorithms.
    No, I didn't. Some of the examples I referred to also discuss other differences. I also mentioend other differences such as memory and what protection level is used when configuring SNC.
    > But for a true comparison, you'd have to look at all relevant aspects (latency, network overhead, ...).
    Yes, I agree. No doubts here.
    >Network performance overhead is usuallly worse with Kerberos than with PKI.
    This is not true. When SAP is using SNC, the GSS-API standard is used and so the only network communication involves SAP software sending a standard GSS token from the workstation to the SAP server, and this GSS token is often about the same size, regardless of which mechanism is used, so any network performance differences are not related to the mechanism, but more related to the complexity of the cryptography used on each end (mostly on the server side).
    >Second, you need to look at the specific usage scenario. For example, the first report referenced by Tim is an analysis about different Token Profile mechanism for WS Security, for one specific implementation. This does not allow to draw any conclusion for the SNC use case in general, and for sure not for a specific implemenation. It does not take the overhead for the encryption of the message content into account. Third, Tim associates PKI exclusively with asymmetric encryption. Yes, it is well known that asymmetric algorithms are slower than symmetric ones, but it is also well known that the encryption of the message content (by far the majority of the data) happens with symmetric encryption algorithms in the PKI scenario. With PKI-based SNC, you can even select a symmetric algorithm and use a more performant one that the ones that Kerberos prescribes.
    Kerberos works with many different symmetric algorithms as well, so mentioning that the alg is selectable is not relavent to any comparison.
    > To summarize, I will try and collect facts that will support the opposite point of view. From our practical experience, the performance overhead is not relevant, and criteria like consistency with SAPcryptolib, strength of security, ease of administration, choice of authentication and encryption mechanism, etc. are much more important.
    >
    > Peter

  • Query performance problem when using hierarchies

    Hello All,
    I've a query which is built on a hieracrhy with the following structure for eg.
    <b>A</b>
    |_<b>B</b>
    | |_L1
    |
    |_<b>C</b>
      |_L2
    When I restrict the query to hierarchy levels B and C simultaneously the query executes fine. But when i directly restrict the query to heirarchy level A , the query runs endlessly.
    Could some one please help me out as to why this is the case ?
    I don't have aggregates built on any of the hierarchy level.
    Best Regards,
    Sanjay

    Hi Roberto,
    thanks for your response. However, the problem is not solved even after applying the suggestions of the note 738098 :(. These queries used to execute fine until yesterday and there have been no major additions to the hierarchy. Please let me know if there is any thing else that can be done. We are planning to bounce the system and see if there are any performance improvements.
    PS: I've awarded points to you nevertheless, as the option suggested in the note seems useful and should be tried in case of these kind of performance issues
    Best Regards,
    Sanjay

  • Performance degradation when using proxy.pac file with FF ESR 31

    With Bug 923458 many people complained about a performance issue compared to other browsers when a proxy.pac file is used.
    The issue initially reported with the bug was resolved for ESR25 according to the statistics, but the general performance issue remained.
    I had the same issue with ESR24 and ESR31.3 .
    I was testing with www.bild.de.
    It took about 40 seconds to load the content completely. Without the proxy.pac file it took about 10 seconds.
    I added a few alerts to the pac-File in order to get logs within the console for some analyses.
    I found the following:
    1. the pac.file is executed for every request, no matter if the host changed or not.
    With us the pac-File checks for IP-Adresses and host-names only.
    It is not necessary to execute the pac file for each and every request to the same remote host.
    So the question is, if we are able to disable this behaviour via about:config?
    2. the content referenced by www.bild.de seems to be loaded sequentially and with a delay
    The overall time consumed by the proxy.pac file executions was about 4 Seconds compared to the 40 seconds of overall load time.
    So I checked the delay between executions of the pac-file and found an overall delay of 40 seconds. I expect that the delay between the calls to the pac-file is caused by the retrieval of contents from the remote host.
    So why are the requests executed sequentially?
    Hint: Due to the times necessary for executing the pac-file and downloading the contents from the remote host, I would expect the logs generated by my alerts to be mixed (especially if myIpAddress took 1 Second). But the log is cleanly ordered by URL. (see attachment)

    Hi guigs2,
    thanks for your response. As we only use myIpAddress once within our pac-File and only rely on dnsDomainIs(), ==-Comparisons and shExpMatch() and the sum of all pac-Executions was about 4 seconds compared to 40 seconds overall load time, I do not think that dns resolving is our issue.
    I checked the seetings of the configuration you mentioned above. It is set to "false", so the client would try the resolve the dns names. Our admin told, that we do not use socks-Proxies, only http-Proxies.
    Regarding sequential load of the contents included on www.bild.de from other web sites, I attached a screenthot.
    Please note the red highlights. These show the start time in milliseconds of the pac-execution. I added this as a kind of id which represents a unique identifier together with the URL if the log items are mixed. But they are not, instead they are cleanly ordered by URL (for all 360 pac-file calls).
    Moreover in the picture you can see the delay between the end of the last pac-file execution and the next one (blue timestamp in millisonds compared to the red timestamp of the next row saying "entered proxy.pac"). The delay sum up exactly to the 40 seconds the FF took to load the page completely.
    Alone the fragment shown represents a delay of 630ms between the pac-file executions. If the contents would be loaded in parallel, there should be no such delay.

  • Performance issues when using AQ notification with one consumer

    We have developed a system to load data from a reservation database to a reporting database
    A a certain point in the proces, a message with the identifier of the reservation is enqueued to a queue (multi-consumer) on the same DB and then propagated to a similar queue on the REP database.
    This queue (multi-consumer) has AQ notification enabled (with one consumer) which calls the queue_callback procedure which
    - dequeues the message
    - calls a procedure to load the Resv data into the Reporting schema (through DB link)
    We need each message to be processed ONLY ONCE thus the usage of one single subscriber (consumer)
    But when load testing our application with multiple threads, the number of records created in the Reservation Database becomes quite large, meaning a large number of messages going through the first queue and propagating to the second queue (very quickly).
    But messages are not processed fast enough by the 2nd queue (notification) which falls behind.
    I would like to keep using notification as processing is automatic (no need to set up dbms_jobs to dequeue etc..) or something similar
    So having read articles, I feel I need to use:
    - multiple subscribers to the 2nd queue where each message is processed only by one subscriber (using a rule : say 10 subscribers S0 to S10 with Si processing messages where last number of the identifier is i )
    problem with this is that there is an attempt to process the message for each subscriber, isn't there
    - a different dequeuing method where many processes are used in parallel , with each message is processed only by one subscriber
    Does anyone have experience and recommendations to make on how to improve throughput of messages?
    Rgds
    Philippe

    Hi, thanks for your interest
    I am working with 10.2.0.4
    My objective is to load a subset of the reservation data from the tables in the first DB (Reservation-OLTP-150 tables)
    to the tables in the second DB (Reporting - about 15 tables at the moment), without affecting performance on the Reservation DB.
    Thus the choice of advanced queueing (asyncronous )
    - I have 2 similar queues in 2 separate databases ( AND Reporting)
    The message payload is the same on both (the identifier of the reservation)
    When a certain event happens on the RESERVATION database, I enqueue a message on the first database
    Propagation moves the same message data to the second queue.
    And there I have notification sending the message to a single consumer, which:
    - calls dequeue
    - and the data load procedure, which load this reservation
    My performance difficulties start at the notification but I will post all the relevant code before notification, in case it has an impact.
    - The 2nd queue was created with a script containing the following (similar script for fisrt queue)
    dbms_aqadm.create_queue_table( queue_table => '&&CQT_QUEUE_TABLE_NAME',
    queue_payload_type => 'RESV_DETAIL',
    comment => 'Report queue table',
    multiple_consumers => TRUE,
    message_grouping => DBMS_AQADM.NONE,
    compatible => '10.0.0',
    sort_list => 'ENQ_TIME',
    primary_instance => '0',
    secondary_instance => '0');
    dbms_aqadm.create_queue (
    queue_name => '&&CRQ_QUEUE_NAME',
    queue_table => '&&CRQ_QUEUE_TABLE_NAME',
    max_retries => 5);
    - ENQUEUING on the first queue (snippet of code)
    o_resv_detail DLEX_AQ_ADMIN.RESV_DETAIL;
    o_resv_detail:= DLEX_AQ_ADMIN.RESV_DETAIL(resvcode, resvhistorysequence);
    DLEX_RESVEVENT_AQ.enqueue_one_message (o_resv_detail);
    where DLEX_RESVEVENT_AQ.enqueue_one_message is :
    PROCEDURE enqueue_one_message (msg IN RESV_DETAIL)
    IS
    enqopt           DBMS_AQ.enqueue_options_t;
    mprop           DBMS_AQ.message_properties_t;
    enq_msgid           dlex_resvevent_aq_admin.msgid_t;
    BEGIN
    DBMS_AQ.enqueue (queue_name => dlex_resvevent_aq_admin.c_resvevent_queue,
    enqueue_options => enqopt,
    message_properties => mprop,
    payload => msg,
    msgid => enq_msgid
    END;
    - PROPAGATION: The message is dequeued from 1st queue and enqueued automatically by AQ propagation into this 2nd queue.
    (using a call to the following 'wrapper' procedure)
    PROCEDURE schedule_propagate (
    src_queue_name IN VARCHAR2,
    destination IN VARCHAR2 DEFAULT NULL
    IS
    sprocname dlex_types.procname_t:= 'dlex_resvevent_aq_admin.schedule_propagate';
    BEGIN
    DBMS_AQADM.SCHEDULE_PROPAGATION(queue_name => src_queue_name,
                                            destination => destination,
    latency => 10);
    EXCEPTION
    WHEN OTHERS
    THEN
    DBMS_OUTPUT.put_line (SQLERRM || ' occurred in ' || sprocname);
    END schedule_propagate;
    - For 'NOTIFICATION': ONE subscriber was created using:
    EXECUTE DLEX_REPORT_AQ_ADMIN.add_subscriber('&&STQ_QUEUE_NAME','&&STQ_SUBSCRIBER',NULL,NULL, NULL);
    this is a wrapper procedure that uses:
    DBMS_AQADM.add_subscriber (queue_name => p_queue_name, subscriber => subscriber_agent );
    Then notification is registered with:
    EXECUTE dlex_report_aq_admin.register_notification_action ('&&AQ_SCHEMA','&&REPORT_QUEUE_NAME','&&REPORT_QUEUE_SUBSCRIBER');
    - job_queue_processes is set to 10
    - The callback procedure is as follows
    CREATE OR REPLACE PROCEDURE DLEX_AQ_ADMIN.queue_callback
    context RAW,
    reginfo SYS.AQ$_REG_INFO,
    descr SYS.AQ$_DESCRIPTOR,
    payload RAW,
    payloadl NUMBER
    IS
    s_procname CONSTANT VARCHAR2 (40) := UPPER ('queue_callback');
    r_dequeue_options DBMS_AQ.DEQUEUE_OPTIONS_T;
    r_message_properties DBMS_AQ.MESSAGE_PROPERTIES_T;
    v_message_handle RAW(16);
    o_payload RESV_DETAIL;
    BEGIN
    r_dequeue_options.msgid := descr.msg_id;
    r_dequeue_options.consumer_name := descr.consumer_name;
    DBMS_AQ.DEQUEUE(
    queue_name => descr.queue_name,
    dequeue_options => r_dequeue_options,
    message_properties => r_message_properties,
    payload => o_payload,
    msgid => v_message_handle
    -- Call procedure to load data from reservation database to Reporting DB through the DB link
    dlex_report.dlex_data_load.load_reservation
    ( in_resvcode => o_payload.resv_code,
    in_resvHistorySequence => o_payload.resv_history_sequence );
    COMMIT;
    END queue_callback;
    - I noticed that messages are not taken out of the 2nd queue,
    I guess I would need to use the REMOVE option to delete messages from the queue?
    Would this be a large source of performance degradation after just a few thousand messages?
    - The data load through the DB may be a little bit intensive but I feel that doing things in parallel would help.
    I would like to understand if Oracle has a way of dequeuing in parallel (with or without the use of notification)
    In the case of multiple subscribers with notification , does 'job_queue_processes' value has an impact on the degree of parallelism? If not what setting has?
    And is there a way supplied by Oracle to set the queue to notify only one subscriber per message?
    Your advice would be very much appreciated
    Philippe
    Edited by: user528100 on Feb 23, 2009 8:14 AM

  • Performance issue when using select count on large tables

    Hello Experts,
    I have a requirement where i need to get count of data  from a database table.Later on i need to display the count in ALV format.
    As per my requirement, I have to use this select count inside a nested loops.
    Below is the count snippet:
    LOOP at systems assigning <fs_sc_systems>.
    LOOP at date assigning <fs_sc_date>.
    SELECT COUNT( DISTINCT crmd_orderadm_i~header )
       FROM crmd_orderadm_i
       INNER JOIN bbp_pdigp
           ON crmd_orderadm_iclient EQ bbp_pdigpclient               "MANDT is referred as client
         AND crmd_orderadm_iguid  EQ bbp_pdigpguid
         INTO w_sc_count
    WHERE crmd_orderadm_i~created_at BETWEEN <fs_sc_date>-start_timestamp
         AND <fs_sc_date>-end_timestamp
         AND bbp_pdigp~zz_scsys   EQ <fs_sc_systems>-sys_name.
    endloop.
    endloop.
    In the above code snippet,
    <fs_sc_systems>-sys_name is having the system name,
    <fs_sc_date>-start_timestamp is having the start date of month
    and <fs_sc_date>-end_timestamp is the end date of month.
    Also the data in tables crmd_orderadm_i and bbp_pdigp is very large and it increases every day.
    Now,the above select query is taking a lot of time to give the count due to which i am facing performance issues.
    Can any one pls help me out to optimize this code.
    Thanks,
    Suman

    Hi Choudhary Suman ,
    Try this:
    SELECT crmd_orderadm_i~header
      INTO it_header                 " interna table
      FROM crmd_orderadm_i
    INNER JOIN bbp_pdigp
        ON crmd_orderadm_iclient EQ bbp_pdigpclient
       AND crmd_orderadm_iguid   EQ bbp_pdigpguid
       FOR ALL ENTRIES IN date
    WHERE crmd_orderadm_i~created_at BETWEEN date-start_timestamp
                                          AND date-end_timestamp
       AND bbp_pdigp~zz_scsys EQ date-sys_name.
        SORT it_header BY header.
        DELETE ADJACENT DUPLICATES FROM it_header
        COMPARING header.
        describe table it_header lines v_lines.
    Hope this information is help to you.
    Regards,
    José

Maybe you are looking for

  • Songs not in correct folder--how do I get them there???

    Hello all, I saved, for gods know why,all my songs to a music folder I created.I recently discovered that when you import a cd it automatically saves it to "itunes folder" in "my music" with a subfolder created for the artist eg AC/DC and then anothe

  • Adobe bridge errors

    trying to view the .ffx presets in adobe bridge for after effects and when i select any of them the picture icon and the name pop up in the preview panel but they nothing else happens. none of them play: animations, text, or sound what is the problem

  • Importing Word Docs causes weird formatting that I can't seem to get rid of

    Not really "importing".. but when I drag a Word doc into InDesign, sometimes.. there is some weird formatting from the Word document that I can't get rid of. For example, I just dropped a word document in and everything is fine and behaves properly E

  • Added a book without registering with an id, now cant download ebook

    Hi, so I installed adobe digital editions and authorised without an id. I downloaded my ebook and found that I couldn't transfer to my ereader and had to create an adobe id. So i did that but now I cant open the book and get "The vendor account you e

  • Dynamic app architecture

    I have application that displays customer data in the table form. I don't know the data structure in advance, so I came up with the following architecture: I have report.jsp page that include reporttable.jsp or custom reportable.jsp report.jsp