https://youtu.be/w3HJ3X-PnSA
Bom Dia/Boa Tarde/Boa Noite
Esse Ao Vivo vai estrear as 11:00 do dia 04/09/2020
DICAS 3056 - WINDEV TUTORIAL 79 -04-09-2020 11Hrs- OTIMIZAR ANALISADOR DE DESEMPENHO
Tutoriel WINDEV : Leçon 6.3. Optimiser et déboguer - Analyseur de performances
ASSUNTOS
VAMOS VER O QUE SERA ENSINADO
VISAO GERAL
O QUE PROFILER
INICIANDO O PERFIL DE DESEMPENHO
DUAS OPCOES
PELO EDITOR WINDEV
POR PROGRAMACAO
profillerstart
profillerend
INICIANDO TESTE DE DESEMPENHO
ESTUDANDO O RESULTADO
Video original da Franca
https://youtu.be/wdYlVdAzE5I
Playlist Windev TUTORIAL
Repositorio Windev
https://repository.windev.com/
DICAS 2978 - WINDEV TUTORIAL 1 - 1.1B - WINDEV TEMA ESCURO E IDIOMA DO AMBIENTE
DICAS 2979 - WINDEV TUTORIAL 2 - 1.2- CRIAR JANELA E INSERIR TEXTO E EXIBIR
DICAS 2980 - WINDEV TUTORIAL 3 - 2.1- VARIAVEIS PARTE 1
DICAS 2981 - WINDEV TUTORIAL 4 - 2.2- VARIAVEIS ESCOPO - PARTE 2
DICAS 2982 - WINDEV TUTORIAL 5 - 2.1- VARIAVEIS OPERADORES PARTE 3
DICAS 2983 - WINDEV TUTORIAL 6 - 2.1.D - VARIAVEIS STRINGS PARTE 4
DICAS 2984 - WINDEV TUTORIAL 7 - 2.1.E - VARIAVEIS ARRAYS PARTE 5
DICAS 2985 - WINDEV TUTORIAL 8 - 2.2.A - CONDICOES IF-SWITCH PARTE 1
DICAS 2986 - WINDEV TUTORIAL 9 - 2.2.B - CONDICOES PARTE 2
DICAS 2987 - WINDEV TUTORIAL 10 - 2.3.A - LOOP PARTE 1
DICAS 2988 - WINDEV TUTORIAL 11 - 2.3.B - LOOP EXEMPLOS PARTE 2
DICAS 2989 - WINDEV TUTORIAL 12 - Lesson 2.4. The procedures - PARTE 1
DICAS 2990 - WINDEV TUTORIAL 13 - Leçon 2.4.b. Procedures Parametros - PARTE 2
DICAS 2991 - WINDEV TUTORIAL 14 - PROCEDURES REFERENCIA - PARTE 3
DICAS 2992 - WINDEV TUTORIAL 15 - PROCEDURES OPCIONAIS OU OBRIGATORIAS - PARTE 4
DICAS 2993 - WINDEV TUTORIAL 16 - PROCEDURES EXEMPLOS - PARTE 5
DICAS 2994 - WINDEV TUTORIAL 17 - PERGUNTAS E RESPOSTA - PARTE 1
DICAS 2995 - WINDEV TUTORIAL 18 - PERGUNTAS E RESPOSTA - PARTE 2
DICAS 2996 - WINDEV TUTORIAL 19 - WINDEV E OS BANCOS DE DADOS
DICAS 2997 - WINDEV TUTORIAL 20 - PROJETO E ANALISE - CRIACAO
DICAS 2998 - WINDEV TUTORIAL 21 - PROJETO E ANALISE - ARQUIVOS DADOS CLIENTE - PARTE 2
DICAS 2999 - WINDEV TUTORIAL 22 - PROJETO E ANALISE - ARQUIVOS DADOS CRIACAO ARQUIVO PEDIDO - PARTE 3
DICAS 3000 - WINDEV TUTORIAL 23 - PROJETO E ANALISE - IMPORTANDO CVS-ARQUIVO TEXTO - PARTE 4
DICAS 3001 - WINDEV TUTORIAL 24 - PROJETO E ANALISE - IMPORTANDO ARQUIVO PRODUTO - PARTE 5
DICAS 3002 - WINDEV TUTORIAL 25 - PROJETO E ANALISE - LINK - PARTE 6
DICAS 3003 - WINDEV TUTORIAL 26 - RAD COMPLETO
DICAS 3004 - WINDEV TUTORIAL 27 - VISAO GERAL
DICAS 3005 - WINDEV TUTORIAL 28 - Adicionar e Modificar Janelas PRODUTOS - PARTE A
DICAS 3006 - WINDEV TUTORIAL 29 - Adicionar e Modificar Janelas PRODUTOS Formulario - PARTE B
DICAS 3007 - WINDEV TUTORIAL 30 - Adicionar e Modificar Janelas PRODUTOS ALINHAR CAMPOS - PARTE C
DICAS 2979 - WINDEV TUTORIAL 2 - 1.2- CRIAR JANELA E INSERIR TEXTO E EXIBIR
DICAS 2980 - WINDEV TUTORIAL 3 - 2.1- VARIAVEIS PARTE 1
DICAS 2981 - WINDEV TUTORIAL 4 - 2.2- VARIAVEIS ESCOPO - PARTE 2
DICAS 2982 - WINDEV TUTORIAL 5 - 2.1- VARIAVEIS OPERADORES PARTE 3
DICAS 2983 - WINDEV TUTORIAL 6 - 2.1.D - VARIAVEIS STRINGS PARTE 4
DICAS 2984 - WINDEV TUTORIAL 7 - 2.1.E - VARIAVEIS ARRAYS PARTE 5
DICAS 2985 - WINDEV TUTORIAL 8 - 2.2.A - CONDICOES IF-SWITCH PARTE 1
DICAS 2986 - WINDEV TUTORIAL 9 - 2.2.B - CONDICOES PARTE 2
DICAS 2987 - WINDEV TUTORIAL 10 - 2.3.A - LOOP PARTE 1
DICAS 2988 - WINDEV TUTORIAL 11 - 2.3.B - LOOP EXEMPLOS PARTE 2
DICAS 2989 - WINDEV TUTORIAL 12 - Lesson 2.4. The procedures - PARTE 1
DICAS 2990 - WINDEV TUTORIAL 13 - Leçon 2.4.b. Procedures Parametros - PARTE 2
DICAS 2991 - WINDEV TUTORIAL 14 - PROCEDURES REFERENCIA - PARTE 3
DICAS 2992 - WINDEV TUTORIAL 15 - PROCEDURES OPCIONAIS OU OBRIGATORIAS - PARTE 4
DICAS 2993 - WINDEV TUTORIAL 16 - PROCEDURES EXEMPLOS - PARTE 5
DICAS 2994 - WINDEV TUTORIAL 17 - PERGUNTAS E RESPOSTA - PARTE 1
DICAS 2995 - WINDEV TUTORIAL 18 - PERGUNTAS E RESPOSTA - PARTE 2
DICAS 2996 - WINDEV TUTORIAL 19 - WINDEV E OS BANCOS DE DADOS
DICAS 2997 - WINDEV TUTORIAL 20 - PROJETO E ANALISE - CRIACAO
DICAS 2998 - WINDEV TUTORIAL 21 - PROJETO E ANALISE - ARQUIVOS DADOS CLIENTE - PARTE 2
DICAS 2999 - WINDEV TUTORIAL 22 - PROJETO E ANALISE - ARQUIVOS DADOS CRIACAO ARQUIVO PEDIDO - PARTE 3
DICAS 3000 - WINDEV TUTORIAL 23 - PROJETO E ANALISE - IMPORTANDO CVS-ARQUIVO TEXTO - PARTE 4
DICAS 3001 - WINDEV TUTORIAL 24 - PROJETO E ANALISE - IMPORTANDO ARQUIVO PRODUTO - PARTE 5
DICAS 3002 - WINDEV TUTORIAL 25 - PROJETO E ANALISE - LINK - PARTE 6
DICAS 3003 - WINDEV TUTORIAL 26 - RAD COMPLETO
DICAS 3004 - WINDEV TUTORIAL 27 - VISAO GERAL
DICAS 3005 - WINDEV TUTORIAL 28 - Adicionar e Modificar Janelas PRODUTOS - PARTE A
DICAS 3006 - WINDEV TUTORIAL 29 - Adicionar e Modificar Janelas PRODUTOS Formulario - PARTE B
DICAS 3007 - WINDEV TUTORIAL 30 - Adicionar e Modificar Janelas PRODUTOS ALINHAR CAMPOS - PARTE C
Lesson 6.3. Performance profiler
- Overview.
- Starting the performance profiler.
- Studying the result.
Estimated time: 15 mn |
Previous Lesson | Table of contents | Next Lesson |
The performance profiler (also called Profiler) is a tool used to check and optimize the execution time of the processes found in your application.
The principle is straightforward:
- You run the test of your application.
- During this test, the performance profiler keeps track of all actions performed and saves the execution times of each one of the processes run.
At the end of test, the performance profiler displays:
- the 10 most time consuming operations,
- the duration and the number of calls for all processes run.
The performance profiler can be started:
- from the WINDEV editor:
In this case, the project is automatically run in test mode. You can use your application and start the processes of your choice.
To go back to the WINDEV editor, all you have to do is exit from your application.
Then, the performance profiler displays the monitoring result. This result is saved in a WPF file. - from one of your WLanguage processes, with the following functions:
ProfilerStart Starts "collecting data" for the performance profiler. ProfilerEnd Stops "collecting data" for the performance profiler.
In this case, only the code found between ProfilerStart and ProfilerEnd is studied. The result is saved in a WPF file.
- The first method will be used in our example. To start the performance profiler on the "WD Optimization" project:
- On the "Project" pane, "Audit and performance" group, expand "Analyze performance" and select "Analyze performance".
Remark
The performance profiler can also be started from the project dashboard, via the "Performance" widget. Simply: - enable the Widget if necessary (click the link "Click here to re-enable").
- expand the button with arrow and select "Analyze the performance".
- The project test is run.
- Click the "Test window of performance profiler" button.
- Click the "Process to analyze" button.
- Validate the information window and stop the project test. The performance profiler report window appears.
- On the "Project" pane, "Audit and performance" group, expand "Analyze performance" and select "Analyze performance".
- Let's study the report window of the performance profiler. Results are displayed in several tabs:
- the "Summary" tab presents the ten longest processes.
- the "Mapping" tab presents a graphical view of main processes.
- the "Details" tab presents all processes run during the application test (from the slowest one to the fastest one).
- the "Calls" tab is used to view the details of operations performed in a process.
- Let's present these different tabs in our example.
- The "Summary" tab presents the ten longest processes. In our example, you can see that the local procedure named "UpdateProductStock" takes more than 3 seconds to run.
- The "Mapping" tab is used to visually identify what took the longest time. In our case, it's a call to Ping:
- The "Details" tab presents all processes or events run, from the slowest one to the fastest one.
The following information is displayed for each process or event:- Function: Function, event or procedure run.
- Total time: Execution time of function.
- Internal time: Execution time due to the engine.
- Nb of calls: Number of calls made to the function (procedure or event).
- Time 1 call: Execution time of a call to the function (procedure or event).
- Code %: Percentage of time spent in the process of function or procedure (developer code that can be optimized).
- Parent: Element that contains the process.
- The "Summary" tab presents the ten longest processes. In our example, you can see that the local procedure named "UpdateProductStock" takes more than 3 seconds to run.
- In our case, the "Details" tab indicates that the call to the "Ping" function is one of the elements taking the longest time.
- Select this line. We are going to check whether this slowdown is caused by a specific problem.
- Click the "Calls" button to display the details of calls to the UpdateProductStock procedure. Select the "Ping" line and click the "Code" button: the corresponding code line is displayed in the code editor.
- Close the performance profiler.
- The following code line is run:The slowdown is caused by the fact that the address specified for Ping is not accessible.// Checks the accessibility of supplier server
Ping("supplier-addr")
- Let's check the operating mode of application by optimizing this code:
- Replace the code line containing Ping by the following code line:// Checks the accessibility of supplier server
Ping("www.google.fr") - Save the code (Ctrl + S).
- Replace the code line containing Ping by the following code line:
- We are now going to restart the performance profiler:
- On the "Project" pane, "Audit and performance" group, expand "Analyze performance" and select "Analyze performance".
- The project test is run.
- Click the "Test window of performance profiler" button.
- Click the "Process to analyze" button.
- Validate the information window and stop the project test. The performance profiler report window appears.
- In the "Mapping" tab, Ping does not appear with the same importance.
- Close the performance profiler report window.