Is this safe to dynamically change SECCACHE values?
Yes it is safe.
If you turn off SECCACHE, it will free and then reallocate the space at whatever parameters you request.
When you restart SECCACHE it will always reallocate regardless if you change the size parameter or not.
TSS MODIFY(SECCACHE(OFF))
TSS MODIFY(SECCACHE(SIZE=2048,INDEX=30000,EXP=6,WARN=80))
Records are only deleted from the SECCACHE when a SECCACHE CLEAR is initiated (automatically or manually).