Since your Lie algebra is semi-simple there is an alternative strategy for its decomposition using the structure theory of semi-simple Lie algebras. Try the following steps.
(1) Call your initialized Lie algebra alg. Compute a Cartan subalgebra.
> CSA := CartanSubalgebra(alg)
(2) Calculate the associated root space decomposition.
> RSD := RootSpaceDecomposition(CSA)
(3) Calculate the positive roots.
> PR := PositiveRoots(RSD)
Depending on the structure of the root space decomposition, you may need to use one of the alternate calling sequences to compute the positive roots. See the help page for PositiveRoots.
(4) Calculate the simple roots
> SR := SimpleRoots(PR)
(5) Calculate the Cartan matrix
> CM := CartanMatrix(SR, RSD)
(6) If necessary, rearrange the order of the simple roots (in the list SR) so that the Cartan matrix in step (5) is block diagonal, with each block a Cartan matrix in standard form. See the CartanMatrix help page for the standard forms.
(7) The original Lie algebra is then the direct sum of simple Lie algebras corresponding to each block in CM from step (6).
(8) If desired, using the simple roots obtained in step (6) and the root space decomposition, one can find a new basis for the original Lie algebra which is adapted to this direct sum decomposition.
In an upcoming update to the DifferentialGeometry software steps (6), (7), (8) are automated.