# EvalCompareSchemeSwitching fails with slots = N // 2

**URL:** <https://openfhe.discourse.group/t/evalcompareschemeswitching-fails-with-slots-n-2/2218>\
**Category:** Library Questions\
**Created:** [November 20, 2025, 7:46am UTC](https://openfhe.discourse.group/t/evalcompareschemeswitching-fails-with-slots-n-2/2218 "2025-11-20T07:46:57Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![andreea.alexandru](https://yyz1.discourse-cdn.com/flex031/user_avatar/openfhe.discourse.group/andreea.alexandru/32/378_2.png) [@andreea.alexandru](https://openfhe.discourse.group/u/andreea.alexandru)\
**Post date:** [November 21, 2025, 5:28pm UTC](https://openfhe.discourse.group/t/evalcompareschemeswitching-fails-with-slots-n-2/2218/4 "2025-11-21T17:28:52Z")

</div>

The bottleneck is FHEW, which does not support SIMD instructions for a vector of inputs, and therefore the parallelism is limited by the number of threads on your machine.

In terms of practicality of the scheme switching implementation, either use sparse packing with fewer slots (so more ciphertexts but cheaper transformation, mentioned [here](https://openfhe.discourse.group/t/how-to-run-ciphertext-conversion-with-2-14-slots-in-60g-memory/1412/6)) or implement the transformation via FFT (the way it is done for CKKS bootstrapping).

More promising are the recent methods for functional bootstrapping in CKKS: [https://eprint.iacr.org/2024/1637.pdf](https://eprint.iacr.org/2024/1637.pdf), [https://eprint.iacr.org/2024/1623.pdf](https://eprint.iacr.org/2024/1623.pdf). The latter is implemented in OpenFHE and we plan to expand it in the next release versions.

---

_[View the full topic](https://openfhe.discourse.group/t/evalcompareschemeswitching-fails-with-slots-n-2/2218)._
