Este documento discute várias abordagens para resolver o problema da multiplicação de cadeias de matrizes de forma otimizada, incluindo: (1) programação dinâmica para encontrar a ordem ótima de multiplicação, (2) minimização de cache miss ao modificar a ordem de loops, e (3) uso de threads para explorar processadores multicore. O objetivo é analisar esses métodos e medir seu impacto no desempenho.