Advances in computing are limited by memory bandwidth. Even if you could accelerate a computation 10,000x by implementing it as an ASIC, you would need to increase memory bandwidth 10,000x as well.
People are getting better at taking advantage of multiple cpus, but we have limited ability to get parallelism for many applications that matter, such as web browsing, so we aren't ready to break up those tasks to run on 1024 low-performance but low-power CPUs.
You can get server machines with 64 cores on a "chip", even put two cores together for 128. Those sell like hotcakes for cloud computing.
Threads are used both to schedule work across cores but also to manage waits on i/o, a server will have threads running when it is waiting for a client and a Windows or Linux or Mac has many servers running for local use.
Threads are not efficient for I/O scheduling (async/await or select or similar apps are better, but harder to code for.). They are efficient enough for your laptop to have 2000 of them.