Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Specialized DHT #1

Closed
justheuristic opened this issue Mar 1, 2020 · 1 comment
Closed

Specialized DHT #1

justheuristic opened this issue Mar 1, 2020 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@justheuristic
Copy link
Member

justheuristic commented Mar 1, 2020

Based on discussion with @UARTman on 09.02.2020 - we can greatly improve TesseractNetwork by specializing Kademlia DHT to our needs. As of now, there are two issues with the default implementation:

Operating under NAT
At the time of writing, a RemoteExpert client always connects to a runtime via an IP and a port. This is impractical since participants may have have no open ports. We could instead implement direct p2p connections via dht.

Faster lookup
The majority of keys stored in our DHT are expert prefixes used by gating function. These prefixes are not meant to live indefinitely: if no runtime sends prefix information in $t$ seconds, we can safely delete it.

However, Kademlia assumes that if you store a key, this key must be still there after some time. This causes many inefficiencies such as wasting memory on stale keys or "refreshing" keys every 1 or 24 hours.

@justheuristic
Copy link
Member Author

Status:

  • Uperating under NAT: tl;dr Anton found out that nat traversal can be done over UPnP or hole-punching. @unconst mentioned that these methods are implemented in libp2p. Further discussion will be moved to a dedicated issue
  • Faster lookup: we implemented custom DHT with conflict Re-write DHT #37 , switched to grpc in [part 2] grpc-based dht #51 ; Further enhancements will be dedicated to different issues

samsja added a commit to PrimeIntellect-ai/hivemind that referenced this issue May 13, 2024
samsja pushed a commit to PrimeIntellect-ai/hivemind that referenced this issue May 13, 2024
fixed requirements for albert example

fix dataset versions (learning-at-home#1)

Revert "fixed albert example"

This reverts commit cccce0c.

remove accelerate
samsja pushed a commit to PrimeIntellect-ai/hivemind that referenced this issue Jun 10, 2024
fixed requirements for albert example

fix dataset versions (learning-at-home#1)

Revert "fixed albert example"

This reverts commit cccce0c.

remove accelerate
samsja pushed a commit to PrimeIntellect-ai/hivemind that referenced this issue Jul 16, 2024
fixed requirements for albert example

fix dataset versions (learning-at-home#1)

Revert "fixed albert example"

This reverts commit cccce0c.

remove accelerate
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants