Symbian3/PDK/Source/GUID-B77702FA-7385-51A0-986F-7667669CBDB2.dita
changeset 12 80ef3a206772
parent 9 59758314f811
equal deleted inserted replaced
11:5072524fcc79 12:80ef3a206772
    10 <!DOCTYPE concept
    10 <!DOCTYPE concept
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
    12 <concept id="GUID-B77702FA-7385-51A0-986F-7667669CBDB2" xml:lang="en"><title>Guide to Optimising Performance</title><prolog><metadata><keywords/></metadata></prolog><conbody>
    12 <concept id="GUID-B77702FA-7385-51A0-986F-7667669CBDB2" xml:lang="en"><title>Guide to Optimising Performance</title><prolog><metadata><keywords/></metadata></prolog><conbody>
    13 <p>This document highlights areas to investigate as part of a system-wide
    13 <p>This document highlights areas to investigate as part of a system-wide
    14 performance optimization process. </p>
    14 performance optimization process. </p>
    15 <section id="GUID-4B3CF640-15D0-462B-8E64-C002115DDF90"><title>Introduction</title> <p>During development much attention
    15 <section id="GUID-4B3CF640-15D0-462B-8E64-C002115DDF90"><title>Introduction</title> <p>During development much attention is devoted to functionality.
    16 is devoted to functionality. It is typically only at the later stages
    16 It is typically only at the later stages of development that performance
    17 of development that performance (speed, RAM use, power consumption)
    17 (speed, RAM use, power consumption) becomes an issue. This is inevitable
    18 becomes an issue. This is inevitable for many good reasons. </p> <ul>
    18 for many good reasons. </p> <ul>
    19 <li id="GUID-32A6D5A9-4A2C-5EC0-B602-98C0B14A9487"><p>Performance
    19 <li id="GUID-32A6D5A9-4A2C-5EC0-B602-98C0B14A9487"><p>Performance
    20 cannot be easily or usefully assessed until a device or system nears
    20 cannot be easily or usefully assessed until a device or system nears
    21 completion. </p> </li>
    21 completion. </p> </li>
    22 <li id="GUID-572885AD-64E4-5963-AA44-7883239E33AA"><p>Performance
    22 <li id="GUID-572885AD-64E4-5963-AA44-7883239E33AA"><p>Performance
    23 is often affected by interactions between components. </p> </li>
    23 is often affected by interactions between components. </p> </li>
    33 the end of a development project. Good practise and forward thinking
    33 the end of a development project. Good practise and forward thinking
    34 in all aspects from the outset are the most important contributors
    34 in all aspects from the outset are the most important contributors
    35 to producing high-performance products. </p> <p>The Symbian Developer
    35 to producing high-performance products. </p> <p>The Symbian Developer
    36 Library is full of advice on how to write fast and efficient code
    36 Library is full of advice on how to write fast and efficient code
    37 and how to configure your software and hardware for optimized performance. </p> </section>
    37 and how to configure your software and hardware for optimized performance. </p> </section>
    38 <section id="GUID-7AAFD9F5-6AFD-42C6-8872-F67EA380C7EB"><title>Objectives</title> <p>Performance improvement or optimization
    38 <section id="GUID-7AAFD9F5-6AFD-42C6-8872-F67EA380C7EB"><title>Objectives</title> <p>Performance improvement or optimization may be described as achieving
    39 may be described as achieving some or all of the following: </p> <ul>
    39 some or all of the following: </p> <ul>
    40 <li id="GUID-62821E16-8F93-5C56-ADD7-B1D1ACA08AFB"><p>Increased execution
    40 <li id="GUID-62821E16-8F93-5C56-ADD7-B1D1ACA08AFB"><p>Increased execution
    41 speed. Applications and processes perform or appear to perform tasks
    41 speed. Applications and processes perform or appear to perform tasks
    42 in less time. </p> </li>
    42 in less time. </p> </li>
    43 <li id="GUID-DEB5147F-3932-56F4-8E46-435A2A059B38"><p>Reduced start
    43 <li id="GUID-DEB5147F-3932-56F4-8E46-435A2A059B38"><p>Reduced start
    44 up time. Devices are ready for use more quickly after being switched
    44 up time. Devices are ready for use more quickly after being switched
    47 and RAM use. ROM and RAM cost money. </p> <p><xref href="GUID-EFC99FD5-4EC2-5B9E-AE03-FE66D1ABF8A8.dita">Optimising Compressed
    47 and RAM use. ROM and RAM cost money. </p> <p><xref href="GUID-EFC99FD5-4EC2-5B9E-AE03-FE66D1ABF8A8.dita">Optimising Compressed
    48 ROMs</xref>  </p> </li>
    48 ROMs</xref>  </p> </li>
    49 <li id="GUID-4554E6D0-76D7-589F-924A-9724074F8A0F"><p>Reduced power
    49 <li id="GUID-4554E6D0-76D7-589F-924A-9724074F8A0F"><p>Reduced power
    50 consumption. </p> </li>
    50 consumption. </p> </li>
    51 </ul> </section>
    51 </ul> </section>
    52 <section id="GUID-A332DB15-D2A3-4596-95ED-5045DE2EA378"><title>Assessment and Measurement</title> <p>Making changes
    52 <section id="GUID-A332DB15-D2A3-4596-95ED-5045DE2EA378"><title>Assessment
    53 to functioning code is a time consuming and high-risk activity. Before
    53 and Measurement</title> <p>Making changes to functioning code is a
    54 making any changes, therefore, you must be confident that you are
    54 time consuming and high-risk activity. Before making any changes,
    55 likely to have a significant beneficial impact and that you will be
    55 therefore, you must be confident that you are likely to have a significant
    56 able to measure and quantify it. </p> <p>The Symbian platform includes
    56 beneficial impact and that you will be able to measure and quantify
    57 tools and supports techniques that enable you to analyze, monitor
    57 it. </p> <p>The Symbian platform includes tools and supports techniques
    58 and measure the performance of your system or device. </p> <p>The
    58 that enable you to analyze, monitor and measure the performance of
    59 Symbian Platform Sampling Profiler </p> <p><xref href="GUID-BB174A7C-9B72-55C8-8C8A-F5FB14AB3607.dita">Hardware Debugging
    59 your system or device. </p> <p>The Symbian Platform Sampling Profiler </p> <p><xref href="GUID-BB174A7C-9B72-55C8-8C8A-F5FB14AB3607.dita">Hardware
    60 Tools</xref>  </p> <p><xref href="GUID-A3E77067-7982-5803-A274-0C8F2562B483.dita">General purpose logging
    60 Debugging Tools</xref>  </p> <p>General purpose logging (UTRACE)  </p> </section>
    61 (UTRACE)</xref>  </p> </section>
    61 <section id="GUID-863D9195-62F8-455E-89C2-AD1D912066A4"><title>Actions
    62 <section id="GUID-863D9195-62F8-455E-89C2-AD1D912066A4"><title>Actions and Activities</title> <p><b>Configuration</b> </p> <p>The Symbian platform and many of its
    62 and Activities</title> <p><b>Configuration</b> </p> <p>The Symbian platform and many of its
    63 components support various build-time configuration parameters. These
    63 components support various build-time configuration parameters. These
    64 include settings in configuration and initialization files, macro
    64 include settings in configuration and initialization files, macro
    65 definitions and patchable constant values. </p> <p><xref href="GUID-7E401451-16EB-515B-88B2-4D0D2D6C7A57.dita">Adjustable Performance
    65 definitions and patchable constant values. </p> <p><xref href="GUID-7E401451-16EB-515B-88B2-4D0D2D6C7A57.dita">Adjustable Performance
    66 Configuration</xref>  </p> <p><xref href="GUID-B526BA3A-14E4-53B4-9382-437475A1C8A4.dita">List of Patchable
    66 Configuration</xref>  </p> <p><xref href="GUID-B526BA3A-14E4-53B4-9382-437475A1C8A4.dita">List of Patchable
    67 Constants</xref>  </p> <p><b>Coding Practise</b> </p> <p>There are many aspects of coding practise
    67 Constants</xref>  </p> <p><b>Coding Practise</b> </p> <p>There are many aspects of coding practise
    68 that can result in performance variations. Though such differences
    68 that can result in performance variations. Though such differences
    69 might appear small, performance bottlenecks can occur where a piece
    69 might appear small, performance bottlenecks can occur where a piece
    70 of inefficient code is executed repeatedly. By identifying where bottlenecks
    70 of inefficient code is executed repeatedly. By identifying where bottlenecks
    71 exist you target specific areas of code that have a significant impact
    71 exist you target specific areas of code that have a significant impact
    72 on performance. </p> <p><xref href="GUID-49645D0A-AEA4-5D61-A6F3-633D80DCFD5B.dita">Application Performance</xref>  </p> <p><xref href="GUID-12FF05BE-F06E-58F0-909D-05CB6F7FA03E.dita">Code Efficiency</xref>  </p> </section>
    72 on performance. </p> <p><xref href="GUID-49645D0A-AEA4-5D61-A6F3-633D80DCFD5B.dita">Application Performance</xref>  </p> <p><xref href="GUID-12FF05BE-F06E-58F0-909D-05CB6F7FA03E.dita">Code Efficiency</xref>  </p> </section>
    73 <section id="GUID-F2E2E586-E2F8-4EC2-987A-F38ED2771F14"><title>Further Reading</title> <p>The following documents,
    73 <section id="GUID-F2E2E586-E2F8-4EC2-987A-F38ED2771F14"><title>Further
    74 located in other sections of the library, discuss performance and
    74 Reading</title> <p>The following documents, located in other sections
    75 optimization issues relating to particular components of the operating
    75 of the library, discuss performance and optimization issues relating
    76 system. </p> <ul>
    76 to particular components of the operating system. </p> <ul>
    77 <li id="GUID-EF06353C-E907-507E-8468-DC373D6E89AB"><p>Calendar: <xref href="GUID-94AC5E9C-146D-5FE7-B7B6-44AA139A6012.dita">Speeding up Agenda
    77 <li id="GUID-EF06353C-E907-507E-8468-DC373D6E89AB"><p>Calendar: <xref href="GUID-94AC5E9C-146D-5FE7-B7B6-44AA139A6012.dita">Speeding up Agenda
    78 Application Start-up How-To Document, in the Agenda Model engineering
    78 Application Start-up How-To Document, in the Agenda Model engineering
    79 documents section</xref>  </p> </li>
    79 documents section</xref>  </p> </li>
    80 <li id="GUID-779BAF64-10F9-549D-AAE2-B8A13B923A13"><p>Contacts: <xref href="GUID-2E1DCE15-2F35-57E4-A279-18D1A3AB4BD3.dita">Speeding up Contacts
    80 <li id="GUID-779BAF64-10F9-549D-AAE2-B8A13B923A13"><p>Contacts: <xref href="GUID-2E1DCE15-2F35-57E4-A279-18D1A3AB4BD3.dita">Speeding up Contacts
    81 Application Start-up How-To Document, in the Contacts Model engineering
    81 Application Start-up How-To Document, in the Contacts Model engineering