A generic limitation of SICStus Prolog is that it cannot use more than 256 Mb of virtual memory on 32-bit architectures. This is an artifact of the tagged pointer scheme that we use. We have plans for replacing the tagging scheme, but it's a long term project. See the section "Generic limitations" in the Release Notes for additional details.