I would like to sample from a density $\tilde{\pi}=C(\pi)\pi$ whose support is $[0,1]$. The normalization constant $C(\pi)$ of the function $\pi$ is unknown and $\pi$ is very narrow. To see how narrow $\tilde{\pi}$ is, in the figure below, I plot the densities $C(\pi^{1/T}) \pi^{1/T}$ for : $T=100$ in green, $T=500$ in magenta, $T=1000$ in red and $T=2000$ in dark blue. Large values of $T$ flatten $\tilde{\pi}$.
Because $\tilde{\pi}$ is only known up to an unknown normalization constant, I can sample from it using methods such as Hasting-Metropolis algorithm. However, I suspect that these algorithm perform poorly due to the shape of the function. By looking at the plots of the output of Hasting-Metropolis against the iterations, I see that the Markov chains are mixing poorly (for different proposal distributions).
How would you sample from such a distribution ? I was thinking that parallel tempering might be the solution. Are there other solutions ?