image

Access unlimited bootcamps and 650+ courses forever

75
%OFF
Article image
Herlon Santos
Herlon Santos12/12/2025 17:05
Share

Como um trabalho técnico acadêmico ajudou a me reconhecer melhor como profissional.

    A inversão de matrizes costuma ser vista como um tema clássico da computação numérica, presente em livros, disciplinas e algoritmos fundamentais. Entretanto tive a oportunidade de utilizar esse conceito em um experimento real numa disciplina de Computação de Alto Desempenho, implementando versões seriais e paralelas do método de Gauss-Jordan, utilizando a linguagem C, avaliando desempenho, validando resultados e estudando limitações práticas do hardware, descobri que o problema é muito mais do que uma operação algébrica: tornou-se um marco importante na minha trajetória acadêmica e profissional.


    O projeto inverse_matriz, que desenvolvi, em parceria, durante a disciplina buscava entender como diferentes abordagens de inversão se comportavam na prática: utilizei diferentes abordagens para que de forma empírica pudesse verificar a influência das estratégias desde a serialização até o paralelismo, então realizei uma abordagem com a versão sequencial orientada a linhas, outra por colunas, e uma terceira paralelizada com OpenMP. A partir dessas implementações, passei a observar como cada escolha de orientação influenciava o uso da memória, como a hierarquia de caches se manifestava, e como o paralelismo podia ser explorado para acelerar etapas específicas do algoritmo, como a normalização do pivô e a eliminação de Gauss.


    Executar esses experimentos, buscar diferentes estratégias, registrar tempos de execução, validar as inversas e construir gráficos analíticos foi, para mim, muito mais do que um exercício computacional. Foi um processo capaz de aproximar teoria e prática. Assim vi conceitos abstratos ganharem comportamento mensurável, identifiquei gargalos, compreendi melhor como o hardware interage com o software e, sobretudo, percebi que o desempenho real de um algoritmo depende de detalhes que somente a experimentação revela.


    Ainda assim, reconheço que o trabalho permanece aberto. Há caminhos claros para continuar explorando, como a paralelização heterogênea utilizando OpenCL em GPUs e outras estratégias que estendem essa investigação para novos cenários computacionais.


    Essa experiência teve um papel importante no meu desenvolvimento. Como aluno e pesquisador em formação, compreender, ainda que de modo inicial, os mecanismos de paralelização e observar seus efeitos diretos nos resultados tornou-se um aprendizado valioso. Descobri que inverter matrizes não foi apenas resolver um problema matemático, mas entender melhor como penso, como programo, como experimento e como aprendo. A atividade reforçou minha confiança para seguir aprofundando temas que me interessam e mostrou que mesmo tarefas estritamente técnicas podem se tornar espaços de descoberta pessoal.


    Confira em: https://github.com/hlctr/inverse_matriz

    Share
    Recommended for you
    GitHub Copilot - Código na Prática
    CI&T - Backend com Java & AWS
    Nexa - Machine Learning e GenAI na Prática
    Comments (0)