Overlap Add - which length to use?
You have a bunch of options here


You can zero pad both impulse response and signal to 16k, FFT and multiply. That's very inefficient though. Keep in mind that the sum of length of filter and signal need to be equal or smaller then the FFT size, hence an 8k FFT doesn't work. This gets a little better if you can truncate the 8k impulse response down to 7.5k. Then you can use an 8k FFT since 7.5k+512 &lt;= 8k
You can keep accumulating 512k buffers until you have 8k of signal. Then zero pad both to 16k, FFT and multiply. That's a lot cheaper but also increases the latency substantially and you need to do the processing in a different thread.


Typically the best option here is a Segmented Overlap Add or Block Convolver. This works roughly like this


Break your 8k impulse response into 16 chunks of 512 each. Zero pad to 1024 and FFT. Now you have 16 frequency domain transfer function vectors $H_k(z), k= 0,1,2...15$
At every frame n, you get a new signal block $x_n(t)$ of length 512. Zero pad to 1024 and FFT. Now have the frequency domain signal vector $X_n(z)$. Make sure you keep the last 15 frames around as well, so you have $X_n(z), X_{n-1}(z) ... X_{n-15}(z)$
Now multiply the signal vectors with the transfer function vectors and sum up all the results. $Y_n(z) = X_n(z) \cdot H_0(z) + X_{n-1}(z) \cdot H_1(z)+ ... +X_{n-15}(z) \cdot H_{15}(z)$
Inverse FFT, you get 1024 time domain samples, $y_n(t)$
Manage the overlap. Create the output as the first 512 samples of $y_n(t)$ of plus the last 512 from the previous frame $y_{n-1}(t)$. Keep the last 512 samples from the current frame, $y_n(t)$, as overlap for the next frame.


This method is very efficient since you only have to do two 1k FFTs per frame and it also keeps the latency low. There are ways to improve this further by leveraging that the input data is real and not complex, but that should probably be a different question.

If you don't want to manage the overlap manually, use overlap-save instead. 
https://en.wikipedia.org/wiki/Overlap%E2%80%93save_method