Put the sweet potatoes, celery root, and turnips in a 6-quart pot. Add 4-1/2 cups water and 1 tsp. salt. Bring to a boil over medium-high heat; then lower the heat to maintain a simmer and cook until completely tender, about 40 minutes.
Meanwhile, heat 2 Tbs. of the olive oil in a 12-inch nonstick skillet over medium-high heat. Add the onions and 1/4 tsp. salt; cook, stirring often, until just beginning to color, about 5 minutes. Stir in the thyme, reduce the heat to low, and cover. Cook, stirring occasionally, until very soft and amber in color, about 20 minutes. Stir in the sherry or Marsala and simmer until the liquid is absorbed, 1 to 2 minutes.
Add the onions, 4-1/2 cups of the broth, the nutmeg, allspice, and cayenne to the pot. Simmer for 5 minutes and then add the remaining 1 Tbs. olive oil. Let cool slightly. Working in batches, purée the soup in a blender. Season to taste with salt and cayenne. If it seems too thick, add the remaining broth.
Reheat the soup if necessary. Ladle into bowls and drizzle some olive oil over each serving.
The soup may be made up to 3 days ahead and refrigerated; reheat gently before serving. You can also freeze the soup for up to 1 month.