Expanding my comment into an answer, which offers a more general result. > **Theorem (von Neumann).** Let $A$ and $B$ be arbitrary $n\times n$ complex matrices. Then, $$|\text{trace}(AB)| \le \sum_{i=1}^n \sigma_i(A)\sigma_i(B),$$ where $\sigma_i(\cdot)$ denotes the $i$-th singular value. As an immediate corollary we have the OP's result, because for a PSD matrix $A$, $\sigma_i(A)=\lambda_i(A)$. > **Corollary.** Let $A$ be Hermitian positive semidefinite, and $B$ be arbitrary. Then, $|\text{trace}(AB)| \le \text{trace}(A)\|B\|$, where $\|\cdot\|=\sigma_1(\cdot)$ denotes the operator norm. --- **Note.** Using von Neumann's trace inequality, we can also show the more general version of the OP's question, namely a Hölder inequality: \begin{equation*} |\text{trace}(AB)| \le \langle \sigma(A), \sigma(B)\rangle \le \|\sigma(A)\|_p\|\sigma(B)\|_p = \|A\|_p\|B\|_q, \end{equation*} where $\sigma(A)$ is the vector of singular values, and $\|\cdot\|_p$ denotes the Schatten $p$-norm, and $1/p + 1/q=1$ ($p,q\ge1$). For $p=1$ and $q=\infty$ we recover the OP's question.