diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index f670fc0..f533e6d 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -61,7 +61,7 @@ "state": { "type": "search", "state": { - "query": "", + "query": "tag:#pragama", "matchingCase": false, "explainSearch": false, "collapseAll": false, @@ -78,7 +78,8 @@ "state": {} } } - ] + ], + "currentTab": 1 } ], "direction": "horizontal", @@ -171,7 +172,7 @@ "digitalgarden:Digital Garden Publication Center": false } }, - "active": "6a363953132aebe7", + "active": "f75b37cc59d39724", "lastOpenFiles": [ "4a1s/MFES/T - Aula 2.md", "4a1s/CP/PL - Aula 7.md", diff --git a/4a1s/CP/PL - Aula 7.md b/4a1s/CP/PL - Aula 7.md index cd7a12a..36df59e 100644 --- a/4a1s/CP/PL - Aula 7.md +++ b/4a1s/CP/PL - Aula 7.md @@ -109,7 +109,7 @@ T1:i98 w=108 T1:i99 w=109 w=110 ``` -Enquanto o for se desenlaça, as threads 0 ou 1 vão "apanhando" aleatoriamente o print e o w é sempre incrementado como uma uma variável global. No final w=110. +Enquanto o for se desenlaça, as threads 0 ou 1 vão "apanhando" aleatoriamente o print e o w é sempre incrementado como uma uma variável global conforme a iteração do for. No final w=110. ## 1.1 Versão com private(w) ``` @@ -216,7 +216,7 @@ T0:i49 w=49 w=10 ``` -Enquanto o for se desenlaça, as threads 0 ou 1 vão "apanhando" aleatoriamente o print, mas o w de cada thread é da sua própria stack (iniciando-se a 0 para cada stack) +Enquanto o for se desenlaça, as threads 0 ou 1 vão "apanhando" aleatoriamente o print, mas o w de cada thread é da sua própria stack (iniciando-se a 0 para cada stack pois cada thread é "privada"). Após o término das threads, o w mantém-se com o seu valor definido no global (pois as threads são privadas). ## 1.2 Versão com firstprivate(w) @@ -324,6 +324,7 @@ T0:i49 w=59 w=10 ``` +Enquanto o for se desenlaça, as threads 0 ou 1 vão "apanhando" aleatoriamente o print, mas o w de cada thread inicia-se com o valor definido para o definido w global. Dito isto, cada thread trabalhará um w próprio da stack a partir daquele momento. Após o término das threads, o w mantém-se com o seu valor definido no global pois existe antes da paralelização do programa. ## 1.2 Versão com lastprivate(w) ``` @@ -430,6 +431,7 @@ T0:i49 w=49 w=50 ``` +Enquanto o for se desenlaça, as threads 0 ou 1 vão "apanhando" aleatoriamente o print, mas o w de cada thread inicia-se com o valor 0 independentemente do valor do w global. Nas threads o valor irá ser incrementado e após estas, o w terá o valor do w da stack da thread realizada por último (ou a última secção - \#pragama section). ## 1.4 Versão com reduction(+:w) ``` T1:i50 w=0 @@ -534,3 +536,5 @@ T0:i48 w=48 T0:i49 w=49 w=110 ``` + +Enquanto o for se desenlaça, as threads 0 ou 1 vão "apanhando" aleatoriamente o print, mas o w de cada thread inicia-se com o valor 0 independentemente do valor do w global. Nas threads o valor irá ser incrementado e após estas, o w terá o valor do w da stack da thread realizada por último (ou a última secção - \#pragama section). \ No newline at end of file