Just a pedantic point, but 512ms is half a second, which would be absolutely huge latency. I think you probably mean 512 samples per buffer, which is usually around 10.5-11.5ms per buffer, depending on sample rate.
The other parameter which is relevant is buffers per period, meaning how many buffers of audio samples are kept in process at once. I believe you said you are using the ALSA backend of Ardour, which if you have not gone out of you way to change will use 3 buffers per period (labeled as “periods” in the Audio/MIDI setup dialog). I believe 3 may be specific to USB interfaces, if you happen to have a PCIe connected interface it may default to 2. Since you mentioned using a UMC USB interface you can double check to make sure you did not change from the default of 3 for USB.
As far as I am aware, the memlock setting will not typically cause xruns, it will show up in e.g. a software sampler plugin unable to load the entire sample set, or some other memory allocation failure.
An insufficient rtprio setting would be much more likely to cause xruns, so was that addressed by getting your user added to the audio group?
The lack of threadirqs kernel command line may cause problems. You generally do not need full preempt-rt configuration to run down to 256 samples/buffer, but having either preempt-full, or dynamic preemption with the mode set to full (or lazy if you have a recent enough kernel) will provide better performance for realtime scheduled tasks like the Ardour audio processing thread.
You can check your current kernel preemption configuration with this command, which will print output similar to this (the value with parenthesis indicates the mode currently in use):
$ sudo cat /sys/kernel/debug/sched/preempt
none voluntary full (lazy)
If your configuration has the parenthesis around either “none” or “voluntary” you may be able to change that easily depending on how Mint configures the kernel.
This command will show what preemption configuration options were chosen at build time for the kernel. If the dynamic options have a “y” then you can just modify the kernel boot parameters without having to install new kernel:
$ grep PREEMPT_DYNAMIC /boot/config-`uname -r`
CONFIG_PREEMPT_DYNAMIC=y
CONFIG_HAVE_PREEMPT_DYNAMIC=y
CONFIG_HAVE_PREEMPT_DYNAMIC_CALL=y
If those values are “n” then you should check to see if Mint has a different kernel in the repository with something like low latency in the package name.