How to multiply between each elements of a encrypted vector to save memory? CKKS

In CKKS scheme, I have a encrypted ciphertext of a vector. I need to multiply each elements of ciphertext. I can do by EvalMult, EvalRotate. But this way multiplicative depth will increase. It is resourcefully expensive. How I can do another way so save memory resource?

If you deal with a large dataset size, I would suggest using a different packing for your application where the numbers you need to multiply by are placed in different ciphertexts. In other words, if you have vertical packing now, you might want to switch to a horizontal packing. When you do the multiplications, you should use the binary tree approach (such as the one implemented in EvalMany in OpenFHE).