Saltar para:
Logótipo
Você está em: Início » Publicações » Visualização » A Lock-Free Hash Trie Design for Concurrent Tabled Logic Programs

A Lock-Free Hash Trie Design for Concurrent Tabled Logic Programs

Título
A Lock-Free Hash Trie Design for Concurrent Tabled Logic Programs
Tipo
Artigo em Revista Científica Internacional
Ano
2016
Autores
Miguel Areias
(Autor)
FCUP
Ricardo Rocha
(Autor)
FCUP
Revista
Vol. 44
Páginas: 386-406
ISSN: 0885-7458
Editora: Springer Nature
Outras Informações
ID Authenticus: P-00F-YAG
Abstract (EN): Tabling is an implementation technique that improves the declarativeness and expressiveness of Prolog systems in dealing with recursion and redundant sub-computations. A critical component in the design of a concurrent tabling system is the implementation of the table space. One of the most successful proposals for representing tables is based on a two-level trie data structure, where one trie level stores the tabled subgoal calls and the other stores the computed answers. In previous work, we have presented a sophisticated lock-free design where both levels of the tries where shared among threads in a concurrent environment. To implement lock-freedom we used the CAS atomic instruction that nowadays is widely found on many common architectures. CAS reduces the granularity of the synchronization when threads access concurrent areas, but still suffers from problems such as false sharing or cache memory effects. In this work, we present a simpler and efficient lock-free design based on hash tries that minimizes these problems by dispersing the concurrent areas as much as possible. Experimental results in the Yap Prolog system show that our new lock-free design can effectively reduce the execution time and scales better than previous designs.
Idioma: Inglês
Tipo (Avaliação Docente): Científica
Nº de páginas: 21
Documentos
Não foi encontrado nenhum documento associado à publicação.
Publicações Relacionadas

Dos mesmos autores

On Applying Linear Tabling to Logic Programs (2010)
Tese
MIGUEL AREIAS; Ricardo Rocha
Towards multi-threaded local tabling using a common table space (2012)
Artigo em Revista Científica Internacional
Miguel Areias; Ricardo Rocha
Table space designs for implicit and explicit concurrent tabled evaluation (2018)
Artigo em Revista Científica Internacional
Miguel Areias; Ricardo Rocha
On the implementation of memory reclamation methods in a lock-free hash trie design (2021)
Artigo em Revista Científica Internacional
Moreno, P; Miguel Areias; Ricardo Rocha

Ver todas (28)

Da mesma revista

Special Issue on High-Level Parallel Programming and Applications (2022)
Outra Publicação em Revista Científica Internacional
Jorge Manuel Gomes Barbosa; Ines Dutra; Miguel Areias
Relational Learning with GPUs: Accelerating Rule Coverage (2016)
Artigo em Revista Científica Internacional
Alberto Martinez Angeles, CA; Wu, HC; Ines Dutra; Costa, VS; Buenabad Chavez, J
Parallel Asynchronous Strategies for the Execution of Feature Selection Algorithms (2018)
Artigo em Revista Científica Internacional
Jorge Silva; Ana Aguiar; Fernando Silva
LALP: A Language to Program Custom FPGA-Based Acceleration Engines (2012)
Artigo em Revista Científica Internacional
Menotti, R; João M. P. Cardoso; Fernandes, MM; Marques, E
Recomendar Página Voltar ao Topo
Copyright 1996-2024 © Faculdade de Medicina da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2024-11-03 às 19:55:25
Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias | Política de Captação e Difusão da Imagem Pessoal em Suporte Digital